C语言,C++编译遇到问题:has no member named ''XXX‘
has no member named ''XXX‘也许你在使用c++的时候会出现问题:has no member named '...'意思就是类没有成员变量XXA实际上类是具有成员变量XX的问题的原因在于工程中定义的变量和系统头文件定义的宏冲突所致:处理类定义之前,发现了同名的宏,导致在编译之前(预处理阶段)把类成员当作宏做了宏体的替换。解决方案有2个1.#if
文章共269字 · 阅读需要大约1分钟
一键AI生成摘要,助你高效阅读
问答
·
也许你在使用c++的时候会出现问题:has no member named '...'
意思就是类没有成员变量XXA
实际上类是具有成员变量XX的
问题的原因在于工程中定义的变量和系统头文件定义的宏冲突所致:处理类定义之前,发现了同名的宏,导致在编译之前(预处理阶段)把类成员当作宏做了宏体的替换。
解决方案有2个
1.
意思就是类没有成员变量XXA
实际上类是具有成员变量XX的
问题的原因在于工程中定义的变量和系统头文件定义的宏冲突所致:处理类定义之前,发现了同名的宏,导致在编译之前(预处理阶段)把类成员当作宏做了宏体的替换。
解决方案有2个
1.
#ifdef XXX
#undef XXX
#endif
2.包含对象定义所在头文件于调用系统头文件之前.
#undef XXX
#endif
这里的XXX在具体情况中可能为GetObject,LoadImage等等
原文地址:点击打开链接
更多推荐
已为社区贡献1条内容
所有评论(0)