gpt4 book ai didi

ios - 在swift中,强变量是否需要在使用后设置为nil?

转载 作者:行者123 更新时间:2023-11-28 09:33:59 24 4
gpt4 key购买 nike

我基本上使用 outlets 作为弱变量,比如

@IBOutlet weak var testButton: UIButton!

但是如果我使用强而不是弱会发生什么,比如

@IBOutlet var testButton: UIButton!

我必须在使用后将它设置为 nil 吗?

最佳答案

你得到了一些不好的答案。

Outlet 通常是弱的、 隐式展开的可选值。这就是类型后面的 ! 所表示的。

socket 被声明为弱的,以避免在不再需要 View 层次结构后将其保留在内存中。 (通常 outlet 由它的 superview 拥有,简单地将它从 superview 中删除会导致它被释放。通常这是正确的行为。如果您希望 outlet 在从它的 superview 中删除后继续存在,您可以创建另一个强引用或使 socket 坚固,但在这种情况下,您可以在完成后将其关闭)

网点应该被宣布为弱,极少数异常(exception)。是的,如果你声明它们是强的,那么当你用完它们时你应该将它们置零。 (尽管如果你的 View Controller 被释放,那么它并不重要,因为它的强引用将消失。)

关于ios - 在swift中,强变量是否需要在使用后设置为nil?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42366803/

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