【发布时间】:2011-12-27 06:19:15
【问题描述】:
c++中如何使用字符串值作为变量名
string listName = "hari";
string vectorName = "BF_vector_"+listName;
vector<string> vectorName;
vectorName.push_back("Some Value");
如何使用vectorName的字符串值("BF_vector_hari")作为vector的变量名? 提前致谢。
【问题讨论】:
-
你的意思是动态生成一个名字为“BF_vector_hari”的向量变量,类似于php的双$?
-
你……不要!即使在确实支持这一点的语言中......也要三思。
-
不,你认为你有,但你没有。有更好的方法来解决你的问题,不管它是什么。
-
@EthanSteinberg:术语本身就是重点。它表明了对 C++ 工作原理的根本误解。他想要的不能按照他的意愿来,特别是动态的变量名。您可以创建一个映射表,它是将名称映射到 objects 的对象,但它不会将它们映射到 variables。
-
令人惊讶的是,有多少人独立想出做这种可怕的、荒谬的事情的愿望......这让我想知道我们的教育材料是否存在根本性的失败来解释变量的真正含义。
标签: c++