如何根据不同字符串值,生成最终的常量名
比如 :
当字符串为“200”,我希望能得到一个符号常量名 :CONST200
当字符串为“300”,我希望得到一个符号常量名 :CONST300
希望不用if比较来做,比如:
if(str == "200")
{
a = CONST200;
}
else if(str == "300")
{
a = CONST300;
}
[解决办法]
a = hash_table["200"];
a = hash_table["300"];
[解决办法]
要根据某个变量数值不同来处理不同的变量,有很多种方法可以做到
要根据变量数值生成变量名等标识符,不可能做到
c/c++是静态编译语言,变量的数值要在程序运行时才能赋值/更改,此时程序里早已不存在任何标识符,变量名常量名数组名都一样,在编译源代码时就已经消失