"Variable" 变量名 c++
"Variable" variable names c++
问题:
我在这里搜索了一段时间,寻找一种方法来循环命名有点像 variable_1
、variable_2
、....、variable_n
的变量。基本上,我问的是是否有一种方法可以使用循环来实现 variable_i
,或者更具体地说,在我的例子中,functionName_i
。
我需要什么:我试图循环一个对象数组来调用不同的函数,这些函数按顺序命名并与对象数组平行(即:obj[我]->callback_i())
我所知道的:显然,这里的答案(如果只是变量)是使用数组或向量。但是,如果可能的话,我需要以某种方式顺序连接函数的名称。
可能的解决方法:我想到的一切都可以追溯到创建函数指针的 array/vector。如果我真的别无选择,我可能最终会使用它,但我只是觉得出于好奇我应该问一下。
明确问题:有没有办法使用变量 int i
作为函数名称的一部分来循环遍历按顺序命名的函数?
谢谢!
没有
C++ 通常不会在运行时存储类型或变量名信息;如果是这样,它是不可移植的(typeid()
确实因编译器而异)或者它是不可能的。你不能在运行时引用变量名,除非你让系统做那种事情,或者你使用调试信息,这不是标准的 C++ 功能。
这种类型的反射很昂贵,更适合高级语言。 C++,作为一种更底层的语言,去掉了糖分,只告诉你“不”。
如果你制作一个命名系统,你可以在 C++ 中制作这种类型的东西,但通用的命名系统还需要变体、NULL/Maybe
习语的一个版本、属性、检查、大量调试和你如果您愿意,可以做到这一切,但在这里您不妨切换到另一种已经有了您正在寻找的答案的语言,并将 C++ 绑定到它。
或者,使用矩阵或函数数组。然后,按索引迭代。
问题:
我在这里搜索了一段时间,寻找一种方法来循环命名有点像 variable_1
、variable_2
、....、variable_n
的变量。基本上,我问的是是否有一种方法可以使用循环来实现 variable_i
,或者更具体地说,在我的例子中,functionName_i
。
我需要什么:我试图循环一个对象数组来调用不同的函数,这些函数按顺序命名并与对象数组平行(即:obj[我]->callback_i())
我所知道的:显然,这里的答案(如果只是变量)是使用数组或向量。但是,如果可能的话,我需要以某种方式顺序连接函数的名称。
可能的解决方法:我想到的一切都可以追溯到创建函数指针的 array/vector。如果我真的别无选择,我可能最终会使用它,但我只是觉得出于好奇我应该问一下。
明确问题:有没有办法使用变量 int i
作为函数名称的一部分来循环遍历按顺序命名的函数?
谢谢!
没有
C++ 通常不会在运行时存储类型或变量名信息;如果是这样,它是不可移植的(typeid()
确实因编译器而异)或者它是不可能的。你不能在运行时引用变量名,除非你让系统做那种事情,或者你使用调试信息,这不是标准的 C++ 功能。
这种类型的反射很昂贵,更适合高级语言。 C++,作为一种更底层的语言,去掉了糖分,只告诉你“不”。
如果你制作一个命名系统,你可以在 C++ 中制作这种类型的东西,但通用的命名系统还需要变体、NULL/Maybe
习语的一个版本、属性、检查、大量调试和你如果您愿意,可以做到这一切,但在这里您不妨切换到另一种已经有了您正在寻找的答案的语言,并将 C++ 绑定到它。
或者,使用矩阵或函数数组。然后,按索引迭代。