不带括号的宏

Mik*_*ola 1 c++

是否可以定义一个宏,它的参数没有用括号括起来?我想简化我的 ECS 系统,以便用户可以创建组件类,而无需手动编码模板继承内容。

所以宏可能看起来像下面的代码,但我不希望它有括号:

#define ECSComponent(ClassName) struct ClassName : public Component<ClassName>

ECSComponent MyComponent {
    //members
}
Run Code Online (Sandbox Code Playgroud)

Lig*_*ica 5

不可以,您无法更改 C++ 中类函数宏的语法。