我在头文件中声明了这个 Objective-c 接口:
@interface 委托链:NSObject
{@保护
id * delegate;
NSUInteger numberOfDelegates;
NSUInteger sizeOfDelegatesArray;
NSMutableDictionary * hashs;
}
...
这是实现文件中使用变量委托的一段代码:
...
if( NULL == ( delegate = ( id * )realloc( delegate, ( sizeOfDelegatesArray + 10 ) * sizeof( id ) ) ) )
{
/* Error management... */
}
问题是,如果我尝试编译代码,编译器会响应头文件的此错误:ARC语义问题:指向非常量类型'id'的指针,没有明确的所有权
阅读其他帖子,我试图删除 * for id *delegate 因为类型 id 已经是一个指针,但在这种情况下程序会崩溃。