Objective c 带弧释放

Objective c 带弧释放,objective-c,cocoa,automatic-ref-counting,Objective C,Cocoa,Automatic Ref Counting,我终于将一个应用程序更新到Xcode 4.5和ARC。我有一些问题。 在代码中的几个点上,我使用CFRelease()来处理CFxxCopyxx()函数返回的值 然而,使用CFRelease(),我得到了一个 ***-[CFURL类]:在运行时发送到解除分配实例的消息 如果我删除CFRelease(),我会收到一条关于对象泄漏的编译警告,这对我来说很有意义。我错过了什么 char path[PATH_MAX]={0}; CFBundleRef mainBundle = CFBundleGetMa

我终于将一个应用程序更新到Xcode 4.5和ARC。我有一些问题。 在代码中的几个点上,我使用
CFRelease()
来处理
CFxxCopyxx()
函数返回的值

然而,使用
CFRelease()
,我得到了一个

***-[CFURL类]:在运行时发送到解除分配实例的消息

如果我删除
CFRelease()
,我会收到一条关于对象泄漏的编译警告,这对我来说很有意义。我错过了什么

char path[PATH_MAX]={0};
CFBundleRef mainBundle = CFBundleGetMainBundle();
if (NULL != mainBundle)
{
    CFURLRef resourcesURL = CFBundleCopyResourcesDirectoryURL(mainBundle);
    if (!CFURLGetFileSystemRepresentation(resourcesURL, TRUE, (UInt8 *)path, PATH_MAX))
    {
        NSLog(@)"CFURLGetFileSystemRepresentation() failed.\n");
    }
    CFRelease(resourcesURL);
}else
{
    NSLog(@"CFBundleGetMainBundle() failed.\n");
}

3个月没有回答!!!!原因,错误的标签。。。。至少标记到cocoa或objective-c,有人会读到……尝试编写
if(resourcesURL)CFRelease(resourcesURL)是否在代码上运行分析器?从菜单栏中选择产品>分析。每个版本的分析器都会变得更好,因此您应该使用最新版本的Xcode运行它。我认为您需要
CFRelease
,错误发生在哪一行?
CFRelease
?有什么原因不能使用
-[NSBundle resourcePath]
吗?需要处理的代码将更少。