[英]Memory Leaks for typedef struct
我正在嘗試刪除 memory 泄漏。 下面是我的代碼。
currentTime = CFAbsoluteTimeGetCurrent();
CFTimeZoneRef currentTimeZone = CFTimeZoneCopyDefault();
todaysDate = CFAbsoluteTimeGetGregorianDate(currentTime, currentTimeZone);
[currentTimeZone release];
currentTimeZone = nil;
警告:::/myclass.m:87: 警告:無效的接收器類型 'CFTimeZoneRef'
如何為 typedef const struct 釋放 memory?
使用CFxxxCopyxxx
你應該使用CFRelease
。
CFRelease(currentTimeZone);
編輯:
有一些CoreFoundation類是免費橋接的,您的原始聲明沒有泄漏,只是需要一個演員表。 我仍然建議使用CFRelease
,因為您直接使用 CoreFoundation。
[(NSTimeZone*)currentTimeZone release];
從文檔:
如果您擁有 object,您有責任在完成后放棄所有權(使用 CFRelease)。
您正在使用 CoreFoundation 調用,因此您不需要使用 Cocoa 的release
,而是要調用:
CFRelease( currentTimeZone);
為了釋放復制的數據。
嘗試釋放地址簿畢竟人
CFRelease(所有人); CFRelease(地址簿);
這對我有用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.