Skip to content

Commit 53e031c

Browse files
committed
Update ErrorHandling.md
update * to **
1 parent 48466ac commit 53e031c

File tree

1 file changed

+6
-6
lines changed

1 file changed

+6
-6
lines changed

swift-6-beta.docc/LanguageGuide/ErrorHandling.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@
22

33
响应错误并从错误中恢复。
44

5-
*错误处理(Error handling)* 是对程序中的错误条件做出响应并从中恢复的过程。Swift 为在运行时抛出、捕获、传递和处理可恢复错误提供了一等支持。
5+
**错误处理(Error handling)** 是对程序中的错误条件做出响应并从中恢复的过程。Swift 为在运行时抛出、捕获、传递和处理可恢复错误提供了一等支持。
66

7-
有些操作并不能保证总是能执行完成或生成有用的结果。可选项用于表示值缺失,但当操作失败时,理解造成失败的原因有助于你的代码作出相应的应对
7+
有些操作并不能保证总是能执行完成或生成有用的结果。可选类型用于表示值缺失,但当操作失败时,了解造成失败的原因有助于你的代码作出相应的应对
88

99
以从磁盘文件读取和处理数据为例。该任务失败的原因有很多,包括指定路径下的文件不存在、文件没有读取权限或文件编码格式不兼容。通过区分这些不同的失败情况来让程序处理和解决一些错误,并将无法解决的错误告知用户。
1010

@@ -16,7 +16,7 @@
1616

1717
在 Swift 中,错误由遵循 Error 协议的类型值表示。这个空协议表示一种类型可用于错误处理。
1818

19-
Swift 枚举特别适用于对一组相关的错误条件,枚举的关联值还可以提供错误状态的额外信息。例如,您可以用以下方式表示在游戏中操作自动售货机的错误条件:
19+
Swift 枚举特别适用于一组相关的错误条件,枚举的关联值还可以提供错误状态的额外信息。例如,您可以用以下方式表示在游戏中操作自动售货机的错误条件:
2020

2121
```swift
2222
enum VendingMachineError: Error {
@@ -70,7 +70,7 @@ throw VendingMachineError.insufficientFunds(coinsNeeded: 5)
7070
7171
### 用抛错函数传递错误
7272

73-
为了表示函数、方法或构造器可以抛出错误,您可以在函数声明中的参数后写入 `throws` 关键字。标有 `throws` 的函数称为 *抛错函数(throwing function)*。如果该函数指定了返回类型,则应在返回箭头(`->`)之前写入 `throws` 关键字。
73+
为了表示函数、方法或构造器可以抛出错误,您可以在函数声明中的参数后写入 `throws` 关键字。标有 `throws` 的函数称为 **抛错函数(throwing function)**。如果该函数指定了返回类型,则应在返回箭头(`->`)之前写入 `throws` 关键字。
7474

7575
<!--
7676
TODO Add discussion of throwing initializers
@@ -383,7 +383,7 @@ do {
383383
如果抛出错误,执行将立即转移到 `catch` 子句,由其决定是否继续传递。如果错误没有被匹配,它将被最后的 `catch` 子句捕获,并绑定到本地 `error` 常量。
384384
如果没有错误抛出,则执行 `do` 语句中的其余语句。
385385

386-
`catch` 子句不必处理 `do` 子句中的代码可能抛出的所有错误。如果没有 `catch` 子句处理错误,则错误会传播到周围的作用域。但是,传播的错误必须由 *某个* 周围作用域处理。
386+
`catch` 子句不必处理 `do` 子句中的代码可能抛出的所有错误。如果没有 `catch` 子句处理错误,则错误会传播到周围的作用域。但是,传播的错误必须由 **某个** 周围作用域处理。
387387
在非抛错函数中, `do`-`catch` 语句必须处理错误。在抛错函数中,必须由 `do`-`catch` 语句或调用者处理错误。如果错误传递到了顶层作用域却依然没有被处理,则会出现运行时错误。
388388

389389
例如,在编写上述示例时,只要不是 `VendingMachineError` 中声明的错误,都会被调用函数捕获:
@@ -601,7 +601,7 @@ enum StatisticsError: Error {
601601

602602
要指定函数只抛出 `StatisticsError` 值作为其错误,
603603
您可以在声明函数时写入 `throws(StatisticsError)` 而不是 `throws`
604-
这种语法也被称为 *指定类型抛错(typed throws)*,因为您在声明中的 `throws` 后面指定了错误类型。
604+
这种语法也被称为 **指定类型抛错(typed throws)**,因为您在声明中的 `throws` 后面指定了错误类型。
605605
例如,下面的函数抛出 `StatisticsError` 值作为其错误。
606606

607607
```swift

0 commit comments

Comments
 (0)