将数字合并到对象的名称

Merge a number to Object's name

本文关键字:对象 数字 合并      更新时间:2023-10-16

我正在尝试做这样的事情:

int i;
Object a + to_string(i);

为了创建名称为 a1,a2,a3 的对象...

可能吗?

无法使用

int;
Object a + to_string(i);

也许使用std::map是您要找的。

std::map<std::string, Object> theMap;
theMap[std::string("a") + to_string(i)] = Object();

看起来你想要的是一个数组,但如果你想要尊重任何输入整数的"安全"版本,你会这样写:

std::map<int,Object> a;
int i = /*...*/;
a[i].methodName();

如果您希望在运行时动态定义变量名称,那是不可能的,因为变量名称仅在编译阶段之前存在。