2012-06-13 72 views

回答

4

沒有,和文檔是這麼說的很清楚:

返回的C字符串是保證有效期至任何接收器被釋放,或直到當前autorelease池被清空,以先到爲準。如果需要在此時間之後存儲C字符串,則應複製C字符串或使用getCString:maxLength:encoding:

+0

「直到接收器被釋放」是什麼意思?我不確定我在這裏理解術語「接收器」。它是否談論當前的實例? – rid

+2

receiver是消息發送到的對象 - 所以在這種情況下MSString實例 – Mark

0

我認爲cStringUsingEncoding爲已轉換的字符串分配內存以指定編碼因此,如果您沒有使用自動釋放池,則永遠不會釋放此內存。

相關問題