-1

我有以下错误:

Incorrect decrement of the reference count of an object that is not owned at this point by the caller

第二行给了我错误:

    TVConfigurationObject* config = [TVDeviceManger sharedTVDeviceManger].configuration;
    TVInitObj*initObj = config.initObj;

在 TVDeviceManger.h 中:

……

 @property (nonatomic, retain) TVConfigurationObject *configuration;
 + (TVDeviceManger*) sharedTVDeviceManger;

……

在 TVDeviceManger.m 中:

……

 + (TVDeviceManger*) sharedTVDeviceManger {
    static dispatch_once_t onceQueue;

    dispatch_once(&onceQueue, ^{
       sharedMyManager = [[TVDeviceManger alloc] init];
     });

    return sharedMyManager;
}

……

在 TVConfigurationObject.h 中:

……

 @property (nonatomic, retain) TVInitObj *initObj;

.... 有什么问题?

4

1 回答 1

0

如果您不使用 ARC,则应保留返回的对象以供以后使用。

TVConfigurationObject* config = [[TVDeviceManger sharedTVDeviceManger].configuration retain];

但是,如果没有特定要求,您最好使用 ARC。

于 2013-07-29T06:53:32.010 回答