具有 #define 的新变量

New variable with #define

本文关键字:变量 新变量 #define 具有      更新时间:2023-10-16

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

我有这个代码:

#define inti(aa)(int (aa)=3)
...
inti(a);

但是编译器说:

"错误:未在此范围内声明'a'"

有可能

在C++解决这个问题吗?请帮忙!

使用:
 #define inti(aa) int aa=3

那是因为

(int aa=3);

是非法的,更何况你在那里拥有的东西。

实际上,划伤那个。不要使用宏。只需以老式的方式声明您的变量。

实际上我正在声明多维向量

+1 用于陈述您的实际问题的问题。这就是typedef的用途。

typedef std::vector<std::vector<int> > MDVector;
MDVector multiDimensionalVector;
您可以使用

typedef而不是像这样的#define

typedef complexClassName<PossiblyWithManyTemplateParameters> Name
Name var1;
Name var2;
Name var3;

如果您不想多次键入长名称。