在組織我的項目時,我在很多地方都觀察到零比較。我希望替換為 或 。我尊重Golang的規(guī)格,但我很好奇我們是否可以做到這一點。nilNULLNull我已經(jīng)為 做了 它,如下所示。interface{}context.Contexttype CON = context.Context type Any = interface{}
1 回答

largeQ
TA貢獻(xiàn)2039條經(jīng)驗 獲得超8個贊
你不能。您在那里顯示的是類型別名。 不是類型。它是各種不同類型的值。你可能希望你可以做一個值為 的常量,類似于你如何做一個值的常量,但這是編譯器明確不允許的:nil
nil
0
const NULL = nil
錯誤:const initializer cannot be nil
根據(jù)語言規(guī)范:
有布爾常量、符文常量、整數(shù)常量、浮點常量、復(fù)雜常量和字符串常量。
這些類型都不能有值,因此常量是不可能的。nil
nil
你也可以嘗試創(chuàng)建一個保存值的變量,但是你會發(fā)現(xiàn)一個問題,如果你不聲明變量的類型,它就不起作用:nil
var NULL = nil
錯誤:use of untyped nil
您可以通過向變量添加一個能夠的類型來使其合法,但這樣它將不再非常有用,因為它只能與該特定類型進(jìn)行比較。nil
- 1 回答
- 0 關(guān)注
- 92 瀏覽
添加回答
舉報
0/150
提交
取消