我创建了一个协议(protocol)和一个添加类的方法。但是当我想通过这种方法添加类时出现错误: arc 不允许将 objective-c 指针隐式转换为“__autoreleasing id *”
self.homeViewController = [[HomeViewController alloc] init];
[DataController addProgressListener:self.homeViewController];
MyProtocol 类
- (void) addProgressListener:(id*)idbProgressListener {
if(self.progressListeners == nil)
self.progressListeners = [NSMutableArray<IDBProgressListener> alloc];
[self.progressListeners addObject:*idbProgressListener];
}
最佳答案
有了 id,您就不必使用 *。 id 内部有一个分配给它自己的指针。您不需要显式传递它。
关于ios - 如何在 iOS 中调用带有 id 对象参数的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33892710/