是一个静态语言, 所以没有 Objective-C 中的消息发送这些动态机制, dynamic 的作用就是让 swift 代码也能有 Objective-C 中的动态机制, 常用的地方就是 KVO 了...= nil 之外, 还可以使用let optional1: Optional = nil 来定义
▐ 2.26 如何自定义下标获取
实现 subscript 即可, 如
extension...由于 OptionSet 要求有一个不可失败的init(rawValue:) 构造器, 而 枚举无法做到这一点(枚举的原始值构造器是可失败的, 而且有些组合值, 是没办法用一个枚举值表示的)
struct...不一定, 两个 for in 并不能保证都是从 0 开始, 且输出结果一致, 官方文档如下:
Repeated Access
The Sequence protocol makes no requirement...begin for in 1
5
4
3
2
1
end for in 1
begin for in 2
end for in 2
很明显, 第二次没有输出任何结果, 原因就是在第二次for in