c++ - 使用#define 的新变量

标签 c++ variables c-preprocessor

我想用#declare“自动”创建变量。所以,我不想多次键入新变量的类定义(实际上我是在声明多维 vector ,而不是简单的整数...)

我有这个代码:

#define inti(aa)(int (aa)=3)

...

inti(a);

但是编译器说:

"error: 'a' was not declared in this scope"

这个问题可以用C++解决吗?请帮忙!

最佳答案

使用:

 #define inti(aa) int aa=3

那是因为

(int aa=3);

是非法的,更何况你那里有什么。

实际上,从头开始。 不要使用宏。只需以老式的方式声明您的变量即可。

actually I'm declaring multidimensional vectors

+1 表示您的实际问题。这就是 typedef 的作用。

typedef std::vector<std::vector<int> > MDVector;
MDVector multiDimensionalVector;

关于c++ - 使用#define 的新变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10822630/

相关文章:

c++ - 我需要一个(有序的)集合,我可以在其中快速检索成员元素的相对索引

c++ - 单元格阴影轮廓 : edge mesh writer does not define all desired edges

c++ - 创建写入终端的附加文件描述符

c++ - C++标准语法的成员声明

bash - 在 bash 中,如何将一个变量用作另一个变量名称的一部分?

c - 局部变量和静态变量

javascript - 在 1 行中设置多个变量在 javascript 中有效吗? (var x=y ='value' ;)

c++ - 是否可以对所有翻译单元进行定义?

混淆 MACRO 和枚举定义

c++ - 从整数转换为指针