2011-03-30 67 views

回答

2

ABMultiValueRef是應該使用CFRelease釋放的核心基礎對象,而不是-release

#define RELEASE_SAFELY_CF(X) { CFRelease(X); X = NULL; } 

如果您不想創建2個宏,您可以使用轉換[(id)__POINTER release]。但我不建議這樣做,因爲沒有規則說所有CFType都可以發送Objective-C方法。

0

define RELEASE_SAFELY(__ POINTER){[(id)__POINTER release]; __POINTER = nil;}

添加「(id)」類似警告說的轉換。