在Swift中添加分号有什么技术好处吗?

时间:2015-02-21 21:26:06

标签: swift syntax

我在Objective-C中写了几个程序 我已经看到Swift语法不需要使用分号。

我的问题是 - 无论如何使用它们还有技术要点吗?

2 个答案:

答案 0 :(得分:4)

简短的回答是:否。

Swift在代码中的每个语句后都不需要分号。只有当您希望在一行中组合多个语句时才需要它们。

不要在用分号分隔的单行上写多个语句。

<强>优选:

var swift = "not a scripting language"

不首选:

var swift = "not a scripting language";

有关更多信息,请参阅此页:
https://github.com/raywenderlich/swift-style-guide#semicolons

答案 1 :(得分:1)

在某些情况下(或曾经是)编译器会将两条不同行上的两条单独的语句视为一条语句。典型的位置是return,后跟另一个您不想执行的语句。在那种情况下,仅在那种情况下,分号至关重要。

override func viewDidLoad() {
    super.viewDidLoad()
    return // need semicolon here
    print(1) // oops
}

但是,在现代Swift中,编译器会发出警告并进行补偿。添加分号(return;)会使警告静音(尽管随后会导致不同的警告)。

否则,分号永远不会有任何技术优势。