正确的内存管理[string UTF8String]

mad*_*ik3 4 iphone objective-c nsstring

我对objective-c有些新意,我不确定这段代码的正确内存管理是什么.

const unsigned char * data =(const unsigned char *) [string UTF8String];
Run Code Online (Sandbox Code Playgroud)

当我对数据免费调用时,我收到错误.这次通话后我需要清理吗?

BJ *_*mer 10

号"UTF8字符串"不包含的话alloc,copy,retain,或create.因此,你不对那个记忆负责.

请注意,如果您希望数据在string发布后保持不变,则应复制它; 根据合同,您不对该内存负责,但您也不能保证它将超出提供给您的对象的范围.