gpt4 book ai didi

c++ - 是否可以在 C++ 中为变量使用动态名称

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:57:40 24 4
gpt4 key购买 nike

如果可能的话,我想使用动态名称。这里有一个关于我的意思的例子:

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;
}

另一种方法是使用 std::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;
}

但是请注意,这是一个极其缓慢的解决方案。我提到它只是因为它允许你做一些类似于你原来的例子的事情。请改用 vector/数组方法。

关于c++ - 是否可以在 C++ 中为变量使用动态名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29257495/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com