![](/img/trans.png)
[英]How to import an [objective-c++] class which imports a [c++] class into an [objective-c] class?
[英]objective-c++ how to add method into c++ class
我想有一个API风格的功能。 但是实现必须在Objective-C lang上。 因此,我阅读了一些信息并决定执行以下操作-将Objective-C与C ++混合使用。 并且在调用C ++类中的objC方法时遇到问题。 那就是我的例子:
//MYClass.h :
class CClass
{
private:
id fileName;
BOOL rez;
public:
bool download(char* initial_file_name)
{
fileName = [[NSString alloc] initWithUTF8String:initial_file_name];
// here I'd like to call my obj-c method
ObjCClass c = [[ObjCClass alloc] init]
rez = [c writeFile:fileName];
if (rez == YES)
return true;
return false;
}
};
@interface ObjCClass: NSObject
{
CClass *cClass;
}
- (BOOL) writeFile:(NSString *)fileName;
@end
像这样
您要在其中创建Objective-C类实例的行是错误的,其中有一个'*'和';'。 缺少,它应该看起来像这样:
ObjCClass *c = [[ObjCClass alloc] init];
您还需要在C ++类的前面为Objective-C类添加一个前向声明:
@class ObjCClass;
这些更改将使代码可编译,但是您仍然会收到警告。 要解决这些问题,您必须将Objective-C类移到开头,然后在之前声明C ++类。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.