[英]Getting all variables declared in a scope - C++
是否有可能在C ++中创建结构或类以获取在C ++范围内声明的已定义变量的列表。 我不想对这些数组进行硬编码。
例如,我有:
int a;
int b;
int c;
int d;
如何获得程序以打印出程序中所有整数的信息?
我希望能够在程序中找到递增1的整数。 (allints)+ +?
在某个阶段,您需要对其进行硬编码。 您可以创建一个包含int的类,并创建一个自动将其全部递增的函数。
就像是:
class allints {
int a, b, c, d;
public:
void autoincrement() {
++a, ++b, ++c, ++d;
}
}
或者只是一个整数向量,并将其循环以自动递增,如下所示:
allints = vector<int> (4, 0); //size 4, at the start value of 0.
void autoincrement(vector<int> v) {
for(int i: v) ++i;
}
编辑:
注意到您将使用结构或类,只需将它们分组在一个向量中并对其进行迭代(例如我上面的第二个示例)
如果需要遍历一堆相同类型的对象,则通常使用的数据结构是数组(旧式)或某种类型的集合,这取决于诸如唯一性,分类性等次要要求(新式)。 这将与内置类型的数组以及结构数组一起使用。
在类构造函数中,我执行vectorofPlatforms.pushback(this);
我已经发布了我自己的答案,因为你们都没有想到过这种方法,但是我为您的好答案表示支持。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.