Swift 中反引号的实际应用
Practical application of backticks in Swift
To use a reserved word as an identifier, put a backtick (`) before and after it.
我很好奇它的实际应用。您什么时候真正想要命名某些东西 `class`
、`self`
等?
或者,相关地,为什么 Swift 的设计者允许这样做,而不是仅仅禁止我们使用保留字作为标识符?
在某些情况下使用 guard
为我们提供了很好的示例 purpose.In 这种情况我需要检查自变量生命周期是否不再存在(当前控制器已释放)我不想执行其余代码。
guard let `self` = self else {
return
}
最重要的用法是与具有不同关键字的其他语言进行交互。
从 Swift 您可以调用 C 和 Obj-C 函数。
现在,假设您需要调用一个名为 guard
的 C 函数。但是,那是 Swift 中的关键字,因此您必须告诉编译器您不想将其用作关键字,而是用作标识符,例如:
`guard`()
Swift 中有多个关键字被广泛用作 method/function 名称,例如get
和 set
。对于许多情况,Swift 能够找出差异,但并非总是如此。
To use a reserved word as an identifier, put a backtick (`) before and after it.
我很好奇它的实际应用。您什么时候真正想要命名某些东西 `class`
、`self`
等?
或者,相关地,为什么 Swift 的设计者允许这样做,而不是仅仅禁止我们使用保留字作为标识符?
在某些情况下使用 guard
为我们提供了很好的示例 purpose.In 这种情况我需要检查自变量生命周期是否不再存在(当前控制器已释放)我不想执行其余代码。
guard let `self` = self else {
return
}
最重要的用法是与具有不同关键字的其他语言进行交互。
从 Swift 您可以调用 C 和 Obj-C 函数。
现在,假设您需要调用一个名为 guard
的 C 函数。但是,那是 Swift 中的关键字,因此您必须告诉编译器您不想将其用作关键字,而是用作标识符,例如:
`guard`()
Swift 中有多个关键字被广泛用作 method/function 名称,例如get
和 set
。对于许多情况,Swift 能够找出差异,但并非总是如此。