gpt4 book ai didi

ios - 如何在 Objective C 中创建一个强大的 boolean 值

转载 作者:行者123 更新时间:2023-11-28 22:11:52 25 4
gpt4 key购买 nike

我知道我不能有这样的东西:

@property (strong, nonatomic) BOOL didSomethingHappen;

我试图复制的是,在从 TableViewCell 继续的特定 ViewController 中,如果提交了特定操作,则将 BOOL didSomethingHappen 设置为 True。现在,如果您从不同的 TableViewCell 转到同一个 View Controller ,那么 didSomethingHappen 应该是默认值。

我认为我需要的是为每个单独的 ViewController 对象提供一个很好的强 boolean 值。有人能告诉我如何实现这一目标吗?我是 Objective C 的新手。

回顾一下。

|    Table Cell 1    | ----------> |    VC with didSomethingHappen     |
| Table Cell 2 | ----------> | VC with !didSomethingHappen |
| Table Cell 3 | ----------> | VC with didSomethingHappen |

非常感谢你们。

最佳答案

(strong) 不会在这里帮助你。 (strong) 与属性赋值处理引用计数的方式有关。如果将对象分配给 (strong) 属性,则分配对象的引用计数会增加,从而防止在属性持有引用时释放它。 (weak) 属性不会执行此操作,因此当属性持有引用时,引用的对象可能会被释放。在这种情况下,该属性将设置为 nil。

由于 BOOL 是内部类型而不是对象,它的值只是简单地分配给属性,属性不持有引用;所以你不能让它成为 (strong)(weak)

每个对象实例都有属性。因此,您需要确保每个单元格的操作实例化 View Controller 的新副本并在调用 segue 之前适本地分配 bool(或作为 prepareForSegue 的一部分)。

关于ios - 如何在 Objective C 中创建一个强大的 boolean 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22724390/

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