如何创建末尾附加整数的变量名
How to create variable name with integer appended to the end?
我想创建一个for循环,用c++中的数据填充一堆数组。现在为了节省空间,将来一旦添加了更多的数组(它们会添加),我就有了for循环。用于演示的每个数组都被称为数组#(#是一个数字)for循环的要点是设置一个具有最大数组的常量,然后通过在数组名称的末尾添加i来循环填充每个数组。
例如在伪代码中:
for (i = 1; i < numberofarrays; i++)
{ fill (Array & i) with ("Array" & i & "-default.txt")}
任何类型的代码都不可能生成变量名
(这意味着不可能在运行时或编译时生成动态变量名)
可能的最佳解决方案是阵列阵列:
int Arrays[][];
调用Arrays[0]
会得到第一个数组。
如果你想在运行时确定数组的数量,你需要使用指针!
看起来是这样的:
(int[])* Arrays = new (int[])[numberofarrays];
访问数组中的数组也是一样的!
一种替代方案是使用来自std
的容器vector
。
代码看起来是这样的:
#include<vector>
// More includes
// Optional
using namespace std;
// Somewhere in your code
vector<vector<int>> Arrays;
您仍然可以使用标准数组方法(例如Arrays[15][78]
)
您其实并不需要这个名称。您可以使用数组的std::向量。这将无法开箱即用,请参阅使用阵列矢量的正确方法
另一种方法是使用数组的std::映射。如果你真的想要的话,你可以用这个名字作为钥匙。您仍然需要使用与以前相同的解决方法才能将数组作为值。例如,请参见字符数组作为C++映射中的值。
相关文章:
- enum是C++中的宏变量还是整数变量
- 你能重载对象变量名本身返回的内容吗
- 在C/C++中将变量名定义为__00000001有什么好处吗
- 对已具有设定值的整数变量的加法
- 如何使用C++将字符串中的字符转换为整数变量
- C++变量名(可以将 main 声明为变量,但对于其他函数名称则不然)
- C++ - 声明中变量名后面的括号
- 如何使替换 c 函数的变量名成为错误?
- 如果用户输入在整数变量中浮动怎么办?
- 在c++中读取文件时,它如何自动将字符放入字符数组,将数字放入整数变量
- C++:这是使用整数变量作为函数调用指针的正确方法吗
- 是否可以创建没有变量名的变量
- fstream库,试图创建一个变量名为(c++)的文件
- 一个数组C++中的消息和变量名
- 在变量名后声明带有 () 的非内部类型与不使用变量名的行为不同。即 std::map<int,char>x(); - 这是怎么回事?
- C++ 两个线程,共享几个整数变量
- 常量整数变量和数字的不同类型推导
- 错误:调用'begin(long double [nPoints])'没有匹配函数;使用硬编码的 int 与整数变量初始化向量
- 数组的变量名和该数组的地址有什么区别?
- 如何创建末尾附加整数的变量名