gpt4 book ai didi

cocoa - 仪器显示假泄漏?

转载 作者:行者123 更新时间:2023-12-03 16:45:03 28 4
gpt4 key购买 nike

我不确定为什么 Instruments 将以下代码显示为在 UILabel initWithFrame 行上泄漏 128 个字节:

self.navigationItem.leftBarButtonItem = self.editButtonItem; 
UILabel *tmp = [[UILabel alloc] initWithFrame:CGRectMake(25, 100, 275, 100)];
self.emptyMsg = tmp;
[tmp release];

请注意,在此类中,将释放以下内容中的emptyMsg 属性:

-(void) dealloc {
[self.emptyMsg release];
[self.pathToUsersFriendsFile release];
[super dealloc];
}

在某一时刻,我没有使用访问器方法来设置emptyMsg,因此我预计对 的更改会使此泄漏消失。唉,它仍然出现。有人可以指出我的另一个原因吗?

变量声明:

@interface FriendListViewController : UITableViewController <AddFriendDelegate> {
NSString *pathToUsersFriendsFile;
UILabel *emptyMsg;
}
@property(retain) UILabel *emptyMsg;
@end

最佳答案

你的做法没有任何问题。 (尽管我会采纳 Rich 的建议,dealloc 方法中使用点语法;而是释放实例变量。)Instruments 不应该被它混淆,但是 Instruments并不完美。如果它坚持认为这是内存泄漏,那么它就是误报。

关于cocoa - 仪器显示假泄漏?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1539983/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com