你能在#define宏名中使用a.b表示法吗?

时间:2011-11-07 17:44:11

标签: c++ c visual-studio visual-c++ c-preprocessor

我想使用Visual Studio 2008或2010声明一个定义,如下所示:

#define a.b c.d

我收到以下错误:

  

错误C2008:'。' :宏定义中出现意外

我看到我可以创建这样的定义:

#define a c.d

宏名称中是否允许a.b表示法?

2 个答案:

答案 0 :(得分:12)

宏具有相同的命名规则,标识符也是如此。实际上,宏名称​​是标识符。

所以,

  • 他们不能包含点。
  • 他们可以仅包含字母,数字和下划线。没有其他的。但是,他们不能 开头

答案 1 :(得分:3)

怎么样做呢?

#define a c
#define b d