【问题标题】:ios NSKeyedArchiver releasing = bad accessios NSKeyedArchiver 释放 = 错误访问
【发布时间】:2011-10-21 08:54:17
【问题描述】:

我有一个菜鸟问题,我希望你指出我正确的方向。基本上我有一个实现复制协议的自定义类。但是,当我在执行期间保存类时,我发布了自定义类,但访问权限不正确。我可以在仪器中看到保留计数为-2。我使用以下方法保存自定义类:

-(void)storeDataInFile:(NSString*)dataFileName DataArray:(NSArray*)dataToStore 
{
    //Get the path
    NSString *path = [self pathToDocumentsForDataFile:dataFileName];
    //Archive the file
    [NSKeyedArchiver archiveRootObject:dataToStore toFile:path];
}

我是使用方法还是用字符串保存数组,它可以完美运行。关于我的自定义类,我应该更深入地研究什么?

问候

【问题讨论】:

  • 你应该输入你的答案并选择正确,而不是把它和问题放在一起。
  • 我已将其添加到文本中,但似乎找不到创建答案的方法
  • 尝试阅读常见问题。它很容易回答;人们每天都这样做。

标签: ios custom-controls release nskeyedarchiver


【解决方案1】:

我解决了这个问题,但是我只在评论中提供了解决方案,显然已被删除。所以我只想发布答案,表明这是一个菜鸟错误。 从以前的测试实现中,我在类中有以下方法

    - (id)copyWithZone:(NSZone *)zone
{
    return self;
}

//retain is counted up
- (id)retain {
    return self;
}

- (unsigned)retainCount {
    return UINT_MAX;
}

这些方法毁了我的保留计数 :)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-01-12
    • 2011-03-31
    • 1970-01-01
    • 2011-03-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多