让我们说我在c ++中有一个观察者模式代码。与此处的代码非常相似:Observer pattern
如何让ViewController或Objective-C类成为用c ++编写的主题的观察者?
赞赏任何代码示例,
干杯
答案 0 :(得分:1)
Objective-C ++和C ++都不能相互继承,你必须创建代理类来互相交流。
小例子,如果你想从Objective-C ++调用C ++方法。
class Foo : public IObserver {
virtual void bar(int i) { printf("i is %d\n", i); } override;
};
@interface Baz : NSObject {
@public
void* foo;
}
@end
@implementation Baz
- (id)init {
self = [super init];
if (self) {
foo = new Foo();
}
return self;
}
- (void)dealloc {
delete foo;
[super dealloc];
}
- (void)barHappened:(int)i {
foo->bar(i);
}
@end