Go 對「goto」語句的謹慎使用
Go 中「goto」語句的存在常常引起人們的好奇,因為它的與程式碼混淆和流程複雜性的歷史關聯。有人可能會問為什麼 Google 選擇包含它。
在檢視 Go 標準函式庫時,我們發現明智地使用「goto」語句的實例。
例如,在 math/gamma 中.go 檔案中,「goto」有助於簡化控制流程。如果沒有它,程式碼將需要額外的變數和條件檢查,從而降低可讀性和直觀性:
for x < 0 { if x > -1e-09 { goto small } z = z / x x = x + 1 } ... small: if x == 0 { return Inf(1) } return z / ((1 + Euler*x) * x) }
這裡,「goto」消除了對臨時布林變數來追蹤流程的需要,從而導致更簡潔、更清晰的程式碼結構。
要注意的是,Go 對 goto 的使用受到特定規則的約束。 “goto”不得跳過變數宣告或進入不同的程式碼區塊。這些限制可以防止該語句被濫用的可能性,同時保留其在上述特定場景中的有用性。
以上是為什麼 Go 包含「goto」語句?的詳細內容。更多資訊請關注PHP中文網其他相關文章!