【发布时间】:2011-02-24 01:59:22
【问题描述】:
如果标题不清楚,我会尽量澄清我在问什么:
假设我有一个名为 counter 的变量,我知道我可以通过执行以下操作来查看它的当前值:
std::cout << counter << std::endl;
但是,假设我有很多变量,直到运行时我才知道要查看哪些变量。
有谁知道我可以通过变量名获取变量值的方法,例如:
std::cout << valueOf("counter") << std::endl;
我觉得能够做到这一点可能会使调试大型复杂项目更容易。
提前感谢您的宝贵时间。
更新:提供的所有答案都是有效且有用的,但重点是 C++ 中不存在反射(阅读推荐的链接后,原因很清楚)。
【问题讨论】:
-
在 compile-time 中知道
counter字符串吗? -
它被称为“调试器”——它允许您在运行时检查变量值,以及其他有用的功能:)
-
我非常了解调试器和调试,其他答案表明我在询问反射 - 一个我以前不知道的术语......
-
stackoverflow.com/questions/3386861/… 和 for 循环提供帮助。