我有下面的Objective-C ++头文件,它带有返回该指针的简单方法。
@interface MyObj
{
MyCPPObj * cpp;
}
-(MyCPPObj *) getObj;
我已经创建了简单的方法
@implementation MyObj
-(MyCPPObj *) getObj
{
return cpp;
}
在我实际上尝试在另一个文件中使用该对象之前,一切似乎都可以正常工作
newObj = [createdMyObj getObj];
它抱怨:错误:初始化时无法将'objc_object *'转换为'MyCPPObje *'。
看来该方法返回的是Objective-C对象,但我特别要求使用C ++指针。
MyCPPObj是一个诚实的C ++类:
class MyCPPObj
{
public:
int x;
}
我该如何解决?
最佳答案
您很可能忘记了将#import
头文件和@interface
放入使用getObj
的.mm文件中。