为什么在扩展为注释的 C++ 宏上出现“预期的声明”错误?

詹姆士

我有以下宏:

#define DEFINE_EXPORT_MODULE(__module__) /##*Exported by __module__*/

如果我像这样使用它:DEFINE_EXPORT_MODULE(foo)它可以正确扩展为/*Exported by foo*/但我仍然收到 E0169 错误:“需要声明。”

怎么了?

编辑:这是我在代码中使用它的方式。

#define DEFINE_EXPORT_MODULE(__module__) /##*Exported by __module__*/

DEFINE_EXPORT_MODULE("foo.dll") //this produces the error.
void Function(void);

知乎

粘贴运算符的结果必须是宏展开后的有效标记。

尝试创建注释失败,因为注释在预处理开始之前被删除。

请参阅参考资料

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

为什么Javac在@Override注释上失败

为什么扩展WebSecurityConfigurerAdapter且未声明任何bean的类都用配置注释?

为什么在C中出现此段错误?

为什么我的库无法在CocoaPods上扩展并显示为Objective-c,而不是Swift?

当我在Rust函数中注释类型时,为什么会出现错误“预期类型参数”?

“ __cplusplus”宏扩展为什么?

为什么此类型注释错误?

为什么声明了枚举的C ++类的大小为1?

使用宏时的gcc错误:预期为','或';'

为什么在C#中为通用枚举扩展方法使用“ where T:struct”?

扩展c宏后,为什么代码如此之大?

在C中将变量乘以常量后,为什么会出现“预期表达式”错误?

使用函数返回指向函数的指针时出现未声明的标识符错误(Visual Studio上为C ++)

C ++“错误预期为')'”

为什么在以下函数中出现此错误“ pngrutil.c:27:error:在'='标记之前的预期';',','或')'”?

Ksoap2,asp.net c#,tempuri.org被淘汰,但出现错误:预期:START_TAG {http:// schemas ...,为什么“?

为什么会出现<identifier>预期错误?

错误预期为“;” 在声明中

空行上出现预期的声明错误消息

为什么以bash {{a,b}。{c,d}}扩展为{ac} {ad} {bc} {bd}

宏扩展上的Frama-c语法错误

在C ++上收到“ ==”的错误:预期为标识符”

C ++:为什么在包含标头时出现“未在此范围内声明”错误?

为什么/ * * /注释的行为不同?Javascript错误?

我的C ++代码在宏+模板编译中失败,为什么会出现此错误?

尝试在宏扩展中实现特征时出现宏错误

为什么在 C 预处理器宏中嵌套扩展与串联失败?

为什么我的 Package.appxmanifest 扩展给我验证错误 C00CE014?

为什么 JpaRepository 上需要 @Repository 注释?