gpt4 book ai didi

c++ - 如何优化/重构这样的代码?

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:36:23 26 4
gpt4 key购买 nike

在当前项目中,有很多GetData()方法,其中在运行时从手写数据库中获取不同类型的数据,并将它们设置在一个类的不同字段中。项目就有这样的方法。

void GetData(Datatype type, int& value);
void GetData(Datatype type, double& value);
void GetData(Datatype type, long& value);
void GetData(Datatype type, longlong& value);
....

有很多数据类型,所以,这些方法经常被调用有很多分支的开关。

void GetData(Datatype type, int& value)
{
switch(type)
{
Type1:
value = GetDataFromDB1(TYPE1);
Type2:
value = .. //get from different source
...

}

void GetData(Datatype type, double& value)
....

如您所见,GetData() 是根据第二个参数分类的。在每个单独的 GetData() 中,有很多分支。这是获取数据的合理方法吗?

最佳答案

回答“重构这个的最佳方法”需要更多的上下文。例如,除了像您显示的那样获取数据之外,还可以更改数据的存储方式。不过,我怀疑此代码结构是否需要优化。

关于c++ - 如何优化/重构这样的代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3554779/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com