繁体   English   中英

#define的新变量

[英]New variable with #define

我想用#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;

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM