我的.m文件中的函数中包含以下代码:
desc = [my executeFunction]; //由executeFunction返回desc data = [desc objectAtIndex:0]; //数据在.h文件中声明
data2 = [desc objectAtIndex:1];
[myTextField setString:data]; // myTextField连接到IB中的NSTextView [myTextField setString:data2];
我该怎么写第4和第5行?我如何/在何处发布数据和数据2?
答案 0 :(得分:1)
你没有。您尚未从包含data
,data2
或alloc
的选择器或名称包含{{1的名称的函数的方法中收到new
或copy
所以你不负责释放它们。
答案 1 :(得分:1)
修改Cocoa Memory Management Guidelines并确定在这种情况下是否需要释放。有关retain
和release
模式的非常具体但非常简单的规则。将这些规则提交给记忆(双关语)。