class ClassA { let numA: Int init(num: Int) { numA = num }}
在上面的示例代码中,注意在 init里我们可以对 let的实例常量进行赋值,这是初始化方法的重要特点。在 Swift 中 let声明的值是常量,无法被写入赋值,这对于构建线程安全的 API 十分有用。
而因为 Swift 的 init只可能被调用一次,因此在 init中我们可以为常量进行赋值,而不会引起任何线程安全的问题。
class ClassA { let numA: Int init(num: Int) { numA = num }}
在上面的示例代码中,注意在 init里我们可以对 let的实例常量进行赋值,这是初始化方法的重要特点。在 Swift 中 let声明的值是常量,无法被写入赋值,这对于构建线程安全的 API 十分有用。
而因为 Swift 的 init只可能被调用一次,因此在 init中我们可以为常量进行赋值,而不会引起任何线程安全的问题。