c++ - 定义具有相关名称的变量

标签 c++ variables

我想定义名称依赖于其他变量值的变量,例如

for (int i = 0; i < 5; i++) {
    int v_i = 2 * i
}

std::cout << v_3; // output: 6

int m;
std::cin >> m; // m = 42

int v_m = 10;

std::cout << v_42; // output: 10

当然,这些示例不起作用,而只是创建名称为 v_iv_m 的变量,将 i 和 m 视为字符。

我怎样才能做到这一点?

最佳答案

您可以使用关联贴图。它允许您将一个键与一个值相关联,然后从该键访问一个值。

http://www.cplusplus.com/reference/map/map/

例子:

int main ()
{
  std::map<char,int> test;

  test['a']=10;
  test['b']=30;
  test['c']=50;
  test['d']=70;

  std::cout << test['a'] << std::endl; //prints 10
}

在您的情况下,它将是 map<int, int>

map 在其他一些语言中也称为字典。

关于c++ - 定义具有相关名称的变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40951971/

相关文章:

c++ - 在 Clang 中使用 MSVC 预处理器 'charizing' 运算符

c++ - CMake 错误 "Expected a command name"

sql - 在 R 脚本中传递字符串变量以在 SQL 语句中使用它

tsql - SQL Server 变量的微妙之处

c++ - 如何检查多个宏之一是否在单个#ifdef 中定义?

C++:没有重载函数 unordered_set 的实例

C++ -- 关于函数指针的问题

javascript - 动态变量名称 Javascript

C++ 变量类型限制

variables - 是否可以在 Rust 中使用 match 初始化不可变变量?