2017-03-17 77 views
2

我想從Go Tour中瞭解這個示例。
這是什麼最後一個逗號的第3行行中斷 - 瞭解Go Tour的示例

fmt.Println(
    pow(3, 2, 10), 
    pow(3, 3, 20), 
) 

如何換行符通常修飾走代碼的意義。
我知道,如果沒有換行,我可以寫這個語句

fmt.Println(pow(3, 2, 10), pow(3, 3, 20)) 

,它會編譯。
那麼,爲什麼是線需要額外的逗號打破

回答

3

轉到「自動」,增加了;作爲語句的結束。

所以

fmt.Println(
    pow(3, 2, 10), 
    pow(3, 3, 20), 
) 

一樣的

fmt.Println(
    pow(3, 2, 10), 
    pow(3, 3, 20), 
); 

fmt.Println(
    pow(3, 2, 10), 
    pow(3, 3, 20) 
) 

相同

fmt.Println(
    pow(3, 2, 10), 
    pow(3, 3, 20); 
); 

這是一個語法錯誤。

0

沒有意義。函數調用允許使用尾隨逗號,但go fmt將刪除它們。