Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/perl/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
If statement 一次管理多个变量,如果没有,则大_If Statement - Fatal编程技术网

If statement 一次管理多个变量,如果没有,则大

If statement 一次管理多个变量,如果没有,则大,if-statement,If Statement,我必须用一些词来解决这个问题,比如编辑器和它的代码,巫婆返回一些逻辑。 现在我有4000多个变量: string code1 = "onePlusOne"; string code2 = "onePlusTwo"; ... string code4000 = "onePlusFourThousands" 以及相同数量的逻辑if else语句: if(code == code1) return 2; else if(code == code2) return 3; ... els

我必须用一些词来解决这个问题,比如编辑器和它的代码,巫婆返回一些逻辑。 现在我有4000多个变量:

string code1 = "onePlusOne";
string code2 = "onePlusTwo";
...
string code4000 = "onePlusFourThousands"
以及相同数量的逻辑if else语句:

if(code == code1)
    return 2;
else if(code == code2)
    return 3;
...
else if(code = code4000)
    return 4001;
客户端可以将代码粘贴到编辑器中以获取值,例如:

“一些测试,#一加二十#一些测试。”

…结果将是:

“一些测试,21个测试。”

我的问题是:

  • 代码中有4000多个变量
  • 超过4000行if-else(返回超过10000行)
  • 与固体相矛盾:)
我曾考虑将这些代码存储在数据库中(但这几乎解决不了任何问题),我还可以将这些代码分组(但这只会帮助我将if-else拆分为许多其他if-else)


如果您能想到如何管理,我将不胜感激。

您可以使用
键值
结构来存储您的数据,而不是写入+10000 LOC,使用
for
循环来替换您的值。例如

struct key_value {
   string key;
   int value;
};
的循环将类似

for(int i = 0; i < MAPSIZE; i ++) {
     if(YOUR_COMPARE_MODULE) {
         // replace here
     }
}
for(int i=0;i
对象??或者一个
键值
结构??