簡體   English   中英

枚舉作為go中變量的屬性

[英]Enum as variable's property in go

假設我有這樣的事情:

const (
    FOO int = iota
    BAR
    BAZ
)

而且我可以通過FOOBAR等訪問變量。 但是將大量常量存儲在一個名稱空間中並不是很好,所以我試圖將這個枚舉隱藏在結構或類似的東西中,這樣我就可以通過在同一名稱空間中輸入actions.FOO來獲取價值。 我嘗試了很多方法,但是沒有找到類似的東西。 我想提一下,在這種情況下,最簡單的解決方法是使用匿名結構,但我想使用iota保持自動索引。

在屬性后面分配某種可枚舉而不創建我發現的單獨包的唯一方法是使用匿名結構。

type someType int

var ConstantsList = struct {
   FOO, BAR, BAZ someType
}{1, 2, 3}

使用它的缺點很少,它不是一成不變的,並且沒有自動遞增功能。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM