你能在#define宏名中使用ab表示法吗?

Ser*_*upu 1 c c++ visual-studio visual-c++ c-preprocessor

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

#define a.b c.d
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

错误C2008:'.' :宏定义中出乎意料

我看到我被允许创建这样的定义:

#define a c.d
Run Code Online (Sandbox Code Playgroud)

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

Naw*_*waz 12

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

所以,

  • 它们不能包含点.
  • 它们只能由字母,数字和下划线组成.没有其他的.他们无法 启动以数字然而,.