相关疑难解决方法(0)

为什么要创建"Implicitly Unwrapped Optionals",因为这意味着你知道它有价值?

为什么要创建一个"Implicitly Unwrapped Optional"来创建一个常规变量或常量?如果您知道它可以成功解开,那么为什么要首先创建一个可选项呢?例如,为什么这样:

let someString: String! = "this is the string"
Run Code Online (Sandbox Code Playgroud)

会比以下更有用:

let someString: String = "this is the string"
Run Code Online (Sandbox Code Playgroud)

如果"optionals指示常量或变量允许'没有值'",但"有时从程序的结构中可以清楚地看到,在首次设置该值之后,可选项将始终具有值",那么有什么意义呢?首先让它成为可选项?如果你知道一个可选项总是会有一个值,那么它不是可选的吗?

design-patterns optional swift

481
推荐指数
6
解决办法
6万
查看次数

为什么不能在Swift中为@IBOutlet分配let而不是var?

我正在关注Swift的教程,我注意到作者使用var而不是let在声明@IBOutlet变量时.所以我很好奇为什么我不能使用,let因为即使对象是常量,对象的属性仍然是可变的,或者不是这样的情况?

错误使用时,Xcode中显示let

@IBOutlet 属性要求属性是可变的

但我很困惑,因为它questionLabel是一个UILabel对象,不一定是对象的属性.或者questionLabel对象是当前viewController的属性?

import UIKit

class ViewController: UIViewController {

    @IBOutlet let questionLabel: UILabel!

}
Run Code Online (Sandbox Code Playgroud)

如果我过度分析,请提前感谢您.

xcode ios swift

13
推荐指数
3
解决办法
1618
查看次数

标签 统计

swift ×2

design-patterns ×1

ios ×1

optional ×1

xcode ×1