【发布时间】:2010-07-30 14:56:13
【问题描述】:
我想在 Objective-C 头文件中声明一个类 c++ 样式,但我收到一个错误“错误:预期 '='、','、';'、'asm' 或 '__ 属性 __' before ' CPPClass'"
这是来自 .h 文件的代码。
class CPPClass;
@interface OBJCClass : NSObject
{
CPPClass* m_pCPPObject;
}
@end
如果我实现它objective-c风格@class CPPClass我在定义它时得到一个错误,说它找不到接口声明。有没有这样做,否则,所有导入我的头文件和导入的c++头文件的objective-c类也必须是.mm文件。
ps。我已将 m 文件重命名为 mm。
【问题讨论】:
-
你有什么文件? CPPClass.cpp、CPPClass.h、OBJCClass.mm 和 OBJCClass.h ?在编译错误之前实际列出的正在编译的文件是什么。我的猜测是 .cpp 文件实际上是在抱怨 #includes 带有 obj-c 定义的文件。
-
类如您所说,cpp 文件从不包含 OBJCClass.h 。我认为问题在于其他 obj-c 类包含 OBJCClass.h 并且无法解释 c 样式声明。
标签: c++ objective-c objective-c++