为有牺牲多壮志,敢教日月换新天。

[Swift]编程语言5.4:文档修订历史

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
➤微信公众号:山青咏芝(shanqingyongzhi)
➤博客园地址:山青咏芝(https://www.cnblogs.com/strengthen/
➤GitHub地址:https://github.com/strengthen/LeetCode
➤原文地址:https://www.cnblogs.com/strengthen/p/10977730.html 
➤如果链接不是山青咏芝的博客园地址,则可能是爬取作者的文章。
➤原文已修改更新!强烈建议点击原文地址阅读!支持作者!支持原创!
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★

热烈欢迎,请直接点击!!!

进入博主App Store主页,下载使用各个作品!!!

注:博主将坚持每月上线一个新app!!!

2021-02-17

2020-09-16

2020-03-24

  • 已针对Swift 5.2更新。
  • 向“密钥路径表达式”部分添加了有关传递密钥路径而不是闭包的信息
  • 在“特殊名称方法”部分添加了有关语法糖的信息,使类,结构和枚举的实例可以与函数调用语法一起使用。
  • 更新了“下标选项”部分,现在下标支持具有默认值的参数。
  • 更新了“自我类型”部分,现在Self可以在更多上下文中使用。
  • 更新了“式解包的可选值”部分,以使您可以更清楚地了解隐式解包的可选值可以用作可选值或非可选值。

2019-09-10

  • 已为Swift 5.1更新。
  • 向“不透明类型”一章添加了有关指定其返回值所遵循的协议的功能的信息,而不是提供特定的命名返回类型
  • 向“属性包装器”部分添加了有关属性包装器的信息
  • 冻结部分中添加了有关为库演化而冻结的枚举和结构的信息
  • 在“隐式返回”和“简写Getter声明”两节中添加了有关省略函数的信息的函数return
  • 将有关在类型上使用下标的信息添加到“类型下标”部分。
  • 更新了“枚举案例模式”部分,现在枚举案例模式可以匹配可选值。
  • 更新了“结构类型的成员明智的初始化程序”部分,现在成员明智的初始化程序支持省略具有默认值的属性的参数。
  • 将有关在运行时通过键路径查找的动态成员的信息添加到dynamicMemberLookup部分。
  • 添加macCatalyst到“条件编译块”中的目标环境列表中
  • 更新了“自我类型”部分,现在Self可用于引用当前类,结构或枚举声明引入的类型。

2019-03-25

2018-09-17

2018-03-29

2017-12-04

  • 已为Swift 4.0.3更新。
  • 更新了“键路径表达式”部分,现在键路径支持下标组件。

2017-09-19

2017-03-27

  • 已为Swift 3.1更新。
  • 添加了带有通用Where子句的扩展部分,其中包含有关包含需求的扩展的信息。
  • 在“循环中”部分中添加了在范围内进行迭代的示例
  • 在“失败的初始化程序”部分中添加了失败的数字转换的示例
  • 向“声明属性”部分添加了有关将该available属性与Swift语言版本一起使用的信息
  • 更新了“函数类型”部分中的讨论,以注意在编写函数类型时不允许使用参数标签。
  • 更新了“条件编译块”部分中对Swift语言版本号的讨论,现在允许使用可选的补丁程序号。
  • 更新了“函数类型”部分中的讨论,现在,Swift可以区分采用多个参数的函数和采用元组类型的单个参数的函数。
  • 从“表达式”一章中删除了“动态类型表达式”部分,现在这type(of:)是一个Swift标准库函数。

2016-10-27

2016-09-13

  • 已为Swift 3.0更新。
  • 更新了函数”章和“函数声明”部分中对函数的讨论,以注意默认情况下所有参数都获得参数标签。
  • 更新了“高级运算符”一章中有关运算符的讨论,现在您将它们实现为类型方法,而不是全局函数。
  • 在“访问控制”一章中添加了关于openfileprivate访问级别修饰符的信息
  • 更新了inout函数声明”部分中的讨论,以注意它出现在参数类型的前面而不是参数名称的前面。
  • 更新了转义闭包自动闭包部分以及“属性”一章中关于@noescape@autoclosure属性的讨论,因为它们是属性,而不是声明属性。
  • 在“高级运算符”一章的“自定义中缀运算优先级”部分和“声明”一章优先级组声明”部分中添加了有关运算符优先级组的信息
  • 更新整个讨论在使用MacOS的,而不是OS X,Error而不是ErrorProtocol和协议的名称,如ExpressibleByStringLiteral代替StringLiteralConvertible
  • 更新了泛型”一章的“泛型子句”部分和“泛型参数和参数”一章中的讨论,现在,泛型子句写在声明的末尾。where
  • 更新了“转义闭包”部分中的讨论,现在默认情况下闭包是不转义的。
  • 更新在讨论可选绑定一节的基础知识章和虽然声明中的部分陈述章,现在ifwhileguard语句中使用的条件下不使用逗号分隔的列表where条款。
  • 添加了有关具有多个模式的开关情况下的信息交换的部分控制流章和switch语句中的部分陈述章。
  • 现在,函数参数标签不再是函数类型的一部分,从而更新了“函数类型”部分中对函数类型的讨论
  • 更新协议组合物类型的讨论在协议组合的的部分协议章节和在协议组合类型的的部分类型章以使用新的语法。Protocol1 Protocol2
  • 更新了“动态类型表达式”部分中的讨论,以将新type(of:)语法用于动态类型表达式。
  • 更新了对行控制语句的讨论,以使用#sourceLocation(file:line:)行控制语句”部分中语法
  • 更新了“永不返回的函数”中的讨论,以使用新Never类型。
  • 在“文字表达”部分中添加了有关游乐场文字的信息
  • 更新了“ In-Out参数”部分中的讨论,以注意只有不转义的闭包才能捕获In-out参数。
  • 更新了“默认参数值”部分中有关默认参数的讨论,现在不能在函数调用中对它们进行重新排序。
  • 在“属性”一章中更新了属性参数以使用冒号
  • 向“重新抛出函数和方法”部分添加了有关在重新抛出函数的catch块内抛出错误的信息
  • 向“选择器表达式”部分添加了有关访问Objective-C属性的getter或setter的选择器的信息
  • 向“类型别名声明”部分添加了有关通用类型别名以及在协议内部使用类型别名的信息。
  • 更新了“函数类型”部分中对函数类型的讨论,以注意需要在参数类型周围加上括号。
  • 更新了属性章节需要注意的是@IBAction@IBOutlet@NSManaged属性意味着@objc属性。
  • @GKInspectable“声明属性”部分中添加了有关该属性的信息
  • 更新了“可选协议要求部分中对可选协议要求的讨论,以澄清它们仅在与Objective-C互操作的代码中使用。
  • let从“函数声明”部分中删除了有关在函数中显式使用in参数的讨论
  • 现在,已从Swift标准库中删除了Boolean协议,从“语句”一章中删除了对协议的讨论
  • 更正了“声明属性”部分中对@NSApplicationMain属性的讨论

2016-03-21

  • 已为Swift 2.2更新。
  • 向“条件编译块”部分添加了有关如何根据所使用的Swift版本有条件地编译代码的信息
  • 在“显式成员表达式”部分中添加了有关如何区分名称仅由其参数名称不同的方法或初始化程序的信息
  • #selector向“选择器表达式”部分添加了有关Objective-C选择器语法的信息
  • 更新了有关关联类型的讨论,以associatedtype在“关联类型协议关联类型声明”部分中使用关键字
  • nil在“失败的初始化程序”部分中,有关在实例完全初始化之前返回的初始化程序的更新信息
  • 在“比较运算符”部分中添加了有关比较元组的信息
  • 向“关键字和标点”部分添加了有关使用关键字作为外部参数名称的信息
  • 更新了“声明属性”部分中对@objc属性的讨论,以注意枚举和枚举案例可以使用此属性。
  • 更新了“运算符”部分,其中讨论了包含点的自定义运算符。
  • 在“重新抛出函数和方法”部分添加了一条注释,即重新抛出函数不能直接抛出错误。
  • 向“属性观察者”部分添加了一条注释,该注释关于在将属性作为输入输出参数传递时调用属性观察器。
  • “快速浏览”一章中增加了有关错误处理的部分。
  • 更新了“弱引用”部分中的数字,以更清楚地显示重新分配过程。
  • 删除了有关C样式for循环,++前缀和后缀运算符以及--前缀和后缀运算符的讨论。
  • 删除了对可变函数参数和咖喱函数的特殊语法的讨论。

2015-10-20

2015-09-16

2015-04-08

  • 已为Swift 1.2更新。
  • Swift现在具有本机Set集合类型。有关更多信息,请参见Sets
  • @autoclosure现在是参数声明的属性,而不是其类型。还有一个新的@noescape参数声明属性。有关更多信息,请参见声明属性
  • 类型方法和属性现在使用static关键字作为声明修饰符。有关更多信息,请参见类型变量属性
  • Swift现在包括as?as!失败的向下运算符。有关更多信息,请参见检查协议一致性
  • 添加了有关字符串索引的新指南部分
  • 溢出运算符中删除了溢出除法运算符&/)和剩余余数(&%)运算
  • 更新了常量和常量属性声明和初始化的规则。有关更多信息,请参见常量声明
  • 更新了字符串文字中Unicode标量的定义。请参见字符串文字中的特殊字符
  • 更新了范围运算符,以注意具有相同的开始和结束索引的半开范围将为空。
  • 更新的闭包是参考类型,以阐明变量的捕获规则。
  • 更新了值溢出以阐明有符号和无符号整数的溢出行为
  • 更新了协议声明以阐明协议声明的范围和成员。
  • 更新了“定义捕获列表”以澄清闭包捕获列表中弱引用和无主引用的语法。
  • 更新了运算符,以明确提及自定义运算符支持的字符示例,例如数学运算符,其他符号和Dingbats Unicode块中的字符。
  • 现在可以声明常量,而无需在局部函数范围内初始化。首次使用前,它们必须具有设定值。有关更多信息,请参见常量声明
  • 在初始化程序中,常量属性现在只能分配一次值。有关更多信息,请参见初始化期间分配常量属性
  • 现在,多个可选绑定可以if作为赋值表达式的逗号分隔列表出现在单个语句中。有关更多信息,请参见可选绑定
  • 一个可选的-链接表达必须后缀表达式中出现。
  • 协议类型转换不再局限于@objc协议。
  • 现在,可以在运行时失败的类型转换使用as?oras!运算符,保证不会失败的类型转换使用as运算符。有关更多信息,请参见Type-Casting运算符

2014-10-16

2014-08-18

  • 新文档描述了Swift 1.0,这是Apple用于构建iOS和OS X应用程序的新编程语言。
  • 添加了有关协议中的初始化程序要求的新部分
  • 添加了有关仅类协议的新部分
  • 断言和前提条件现在可以使用字符串插值。删除了相反的注释。
  • 更新了“连接字符串和字符”部分,以反映StringCharacter值不再可以与加法运算符(+)或加法赋值运算符(+=组合的事实这些运算符现在仅与String值一起使用。使用String类型的append(_:)方法将单个Character附加到字符串的末尾。
  • availability“声明属性”部分中添加了有关该属性的信息
  • 可选值不再隐式评估true它们何时具有值以及false何时不具有值,以避免在处理可选Bool时造成混淆相反,请nil使用==!=运算符进行显式检查以找出可选值是否包含值。
  • Swift现在有一个Nil-Coalescing运算符),如果存在可选值,它将解开该可选值的值;如果可选值是,则返回一个默认值?? bnil
  • 更新并扩展了“比较字符串”部分,以反映和证明字符串和字符比较以及前缀/后缀比较现在基于扩展字素簇的Unicode规范对等。
  • 现在,您可以尝试设置属性的值,分配给下标,或通过Optional Chaining调用变异方法或运算符有关通过可选链接访问属性的信息已相应更新,并且扩展了“通过可选链接的调用方法”中检查方法调用成功的示例,以显示如何检查属性设置是否成功。
  • 添加了有关通过可选链接访问可选类型下标的新部分
  • 更新了“访问和修改数组”部分,以注意您不能再使用+=运算符将单个项目附加到数组而是使用append(_:)方法,或在+=运算符后附加一个单项数组
  • 添加了一条说明该初始值a范围运营商 a...ba..<b不得超过终值越大b
  • 重新编写了“继承”一章,以删除其对初始化器覆盖的介绍。现在,本章将重点更多地放在子类中的新功能上,以及使用覆盖对现有功能进行的修改。本章的重写属性Getter和Setter的示例已被重写,以显示如何重写description属性。(在子类初始化程序中修改继承属性的默认值的示例已移至“初始化”一章。)
  • 更新了“初始化程序的继承和覆盖”部分,以注意,现在必须使用override修饰符标记指定的初始化程序的覆盖
  • 更新了“必需的初始化程序”部分,以注意,required现在已在所需的初始化程序的每个子类实现之前编写修饰符,并且现在可以通过自动继承的初始化程序来满足对所需初始化程序的要求。
  • 中缀运算符方法不再需要该@infix属性。
  • 前缀和后缀运算符@prefix@postfix属性已由声明修饰符代替prefixpostfix
  • 添加了有关在将前缀和后缀运算符都应用于同一操作数时前缀和后缀运算符的应用顺序的说明
  • 复合分配的运算符功能@assignment定义函数时,运算符不再使用该属性。
  • 定义“自定义运算符”时指定修饰符的顺序已更改。例如,您现在编写而不是prefix operatoroperator prefix
  • 添加了有关信息dynamic的申报修改的声明修饰语
  • 添加了有关类型推断如何与Literals一起使用的信息
  • 添加了有关咖喱函数的更多信息。
  • 添加了有关访问控制的新章节
  • 更新了“字符串和字符”一章,以反映以下事实:Swift的Character类型现在代表单个Unicode扩展字素簇。包括有关扩展字素簇的新部分,以及有关Unicode标量值比较字符串的更多信息
  • 更新了字符串文字部分,以注意,字符串文字中的Unicode标量现在写为\u{n},其中n是0到10FFFF(Unicode的代码空间范围)之间的十六进制数。
  • NSString length现在,属性被映射为Swift的本机String类型utf16Count,而不是utf16count
  • Swift的本机String类型不再具有uppercaseStringorlowercaseString属性。字符串和字符中的相应部分已删除,并且各种代码示例已更新。
  • 添加了有关不带参数标签的初始化参数的新部分
  • 添加了有关“必需的初始化程序”的新部分
  • 添加了有关可选元组返回类型的新部分
  • 更新了“类型注释”部分,以注意可以用一个类型注释在一行上定义多个相关变量。
  • @optional@lazy@final,和@required属性现在是optionallazyfinal,和required 的声明修饰语
  • 更新了整本书,将其..<称为“半开范围算子”(而不是“半闭范围算子”)。
  • 更新了“访问和修改字典”部分,以注意Dictionary现在具有布尔isEmpty属性。
  • 澄清了定义“自定义运算符”时可以使用的完整字符列表
  • nil和布尔truefalse现在面值
  • Swift的Array类型现在具有全值语义。更新了有关集合数组可变性的信息以反映新方法。还阐明了字符串数组和字典的分配和复制行为。
  • 数组类型速记语法现在写为[SomeType]而不是SomeType[]
  • 添加了有关“字典类型速记语法”的新部分,其写为[KeyType: ValueType]
  • 添加了有关集类型的哈希值的新部分
  • 现在闭包表达式的示例使用全局sorted(_:_:)函数而不是全局sort(_:_:)函数来反映新的数组值语义。
  • 更新了有关结构类型的成员明智的初始化程序的信息,以澄清即使结构的存储属性没有默认值,也可以使成员明智的结构初始化程序可用。
  • 已更新为..<,而不是..半开区间操作
  • 添加了扩展泛型类型的示例
posted @ 2019-06-05 09:18  为敢技术  阅读(597)  评论(0编辑  收藏  举报