Van*_*nel 3 iphone memory-leaks objective-c
当我在XCode上构建和分析我的项目时,我在以下行获得了"警告":
NSString *contactEmail = (NSString *)ABMultiValueCopyValueAtIndex(emailInfo, 0);
Run Code Online (Sandbox Code Playgroud)
消息是:在线分配的对象上的潜在泄漏...并存储到contactEmail中.
那条线上有错误吗?
UPDATE
我用这行代码得到了相同的'警告':
ABMultiValueRef emailInfo = ABRecordCopyValue(person, kABPersonEmailProperty);
Run Code Online (Sandbox Code Playgroud)
但在这里,我不能这样做:
[emailInfo release];
Run Code Online (Sandbox Code Playgroud)
我正在为iPhone开发.
ABMultiValueCopyValueAtIndex是一个"复制"功能,它遵循"创建规则".CFRelease完成使用后,您需要调用以释放它.
NSString *contactEmail = (NSString *)ABMultiValueCopyValueAtIndex(emailInfo, 0);
...
if (contactEmail != nil)
CFRelease((CFTypeRef) contactEmail);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3692 次 |
| 最近记录: |