gpt4 book ai didi

iphone - 使用“保留”对象泄漏

转载 作者:行者123 更新时间:2023-12-01 19:28:20 25 4
gpt4 key购买 nike

我有一个属性与retain属性定义,我正在合成:

@property (nonatomic, retain) UISwitch *mySwitch;

在我的loadView中,我正在这样做:
self.mySwitch = [[UISwitch alloc] initWithFrame:CGRectMake(0, 0, 40, 20)];

最后在我的dealloc中,我这样做:
self.mySwitch = nil;

我使用了一个分配后是否泄漏了该对象(mySwitch)?我应该在分配框架时自动释放它吗?

请提出建议。

最佳答案

该行:

self.mySwitch = [[UISwitch alloc] initWithFrame:CGRectMake(0, 0, 40, 20)];

实际上,调用会保留两次-一次是 alloc的调用,另一次是 self.mySwitch的分配的调用(这是您应为 retain分配给它的任何值指定的属性。)我被告知的解决方法最好是在上添加对 autorelease的调用行,使其:
self.mySwitch = [[[UISwitch alloc] initWithFrame:CGRectMake(0, 0, 40, 20)] autorelease];

关于iphone - 使用“保留”对象泄漏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5098549/

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