如果可能的话,我想使用动态名称。这是一个关于我的意思的例子:
int sol1,sol2;
for(int i=1; i<3; i++){
sol"i"=i*i;
return max(sol1,sol2);
}
与sol"i"
我的意思是sol1
在第一周期(当i = 1)和sol2
用于第二(当i = 2)。这有可能以类似的方式吗?
这是不是可以做到你的要求,但也有替代品,你会发现同样的表现。
可能最常见的方法是使用vector
(或数组)并为其编制索引:
std::vector<int> sol(2);
for (int i = 0; i < 2; ++i) {
sol[i] = i * i;
}
另一种方法是使用astd::map
将所需的名称映射到结果变量:
std::map<std::string, int> variables;
for (int i = 1; i < 3; ++i) {
std::string varname = "sol" + std::to_string(i);
variables[varname] = i * i;
}
但是请注意,这是一个非常慢的解决方案。我之所以仅提及它,是因为它允许您执行与原始示例相似的操作。请使用向量/数组方法。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句