gpt4 book ai didi

objective-c - 设置属性值时是否需要使用临时变量?

转载 作者:行者123 更新时间:2023-11-29 11:10:38 24 4
gpt4 key购买 nike

我有一个(保留的)UIImage 属性,用于保存用户选择的图像。

这是我目前在用户进行选择时的代码:

- (IBAction) selectImage1 {
UIImage *image = [UIImage imageNamed: @"image1-big.png"];
self.bigImage = image;
}

但我想知道是否可以省略临时变量便利方法的使用而只执行以下操作:

- (IBAction) selectImage1 {
self.bigImage = [UIImage imageNamed: @"image1-big.png"];
}

如果第二种方法有问题(我猜与内存管理有关),有人可以解释一下吗?

谢谢!

最佳答案

第二种方式完全没问题。 UIImage *image = [UIImage imageNamed: @"image1-big.png"]; 行为您提供了一个自动释放的变量 image。通过 self.bigImage = image 将其分配给您的 ivar 会调用 bigImage 的 setter 方法,该方法保留该值。因此,行 self.bigImage = [UIImage imageNamed: @"image1-big.png"]; 相当于更冗长的方式。

关于objective-c - 设置属性值时是否需要使用临时变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11749618/

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