objective-c - 将非本地对象的地址传递给 __autoreleasing 参数进行写回

标签 objective-c xcode xcode4.2 autorelease

我正在尝试使用 xcode 4.2 制作应用程序,但我真的很困惑为什么会发生这种情况。 有人可以帮我解释一下为什么出现错误时行中出现错误

将非本地对象的地址传递给__autoreleasing参数进行回写

RootViewController.h

RootViewController.m

最佳答案

诊断错误会更容易,而不必猜测发生错误的行号,但我认为问题是您使用错误实例变量作为错误传递这里:

30    [audioSession setCategory:AVAudioSessionCategoryPlayAndRecord error: &error];

也在这里

49    [fm removeItemAtPath:[recordedTmpFile path] error:&error];

原因是,如果发生错误,在setCategory:error:中,error的现有值将被覆盖而不被释放,因此存在潜在的泄漏。

关于objective-c - 将非本地对象的地址传递给 __autoreleasing 参数进行写回,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8309905/

相关文章:

objective-c - 检查文件是否存在于 URL 而不是路径

iphone - 解析 RSS 提要的主体

swift - 如何阻止 Swift 中 UIScrollView 的垂直滑动移动?

iphone - Storyboard - 根据情况自动返回上一屏幕

ios - 狮子-Xcode 4.3.2 sqlite "no such table"

ios - 控件的 frameForAlignmentRect 上的自动布局 setFrameSize

ios - Xcode 11 : Changes in code not updated to app or breakpoint doesn't work

ios - 如何创建新 View 或现有 View 的副本

ios - 适用于 iOS 3.2 的 iPad 模拟器未运行

objective-c - iPhone上的popover viewController崩溃,适用于iPad