Есть ли способ подсчитать общее количество элементов, определенных в Enum?

Я пытаюсь подсчитать количество элементов, определенных в моем перечислении (iota) в Go, но я не знаю, как это сделать.

Вы не можете сделать это в целом. В качестве хака вы можете определить последний элемент в iota как N_Enum и использовать его.

Burak Serdar 22.02.2023 04:41
Создание API ввода вопросов на разных языках программирования (Python, PHP, Go и Node.js)
Создание API ввода вопросов на разных языках программирования (Python, PHP, Go и Node.js)
API ввода вопросов - это полезный инструмент для интеграции моделей машинного обучения, таких как ChatGPT, в приложения, требующие обработки...
3
1
57
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Например, ILen и XLen,

package main

import "fmt"

const (
    I1 = 1 << iota
    I2
    I3
    ILen int = iota
)

const (
    X1       = "A"
    X2       = "B"
    X3       = "C"
    XLen int = iota
)

func main() {
    fmt.Println(I1, I2, I3, ILen)
    fmt.Println(X1, X2, X3, XLen)
}

https://go.dev/play/p/krBVid3jLNq

1 2 4 3
A B C 3

Спецификация языка программирования Go

Йота

В объявлении констант предварительно объявленный идентификатор iota представляет последовательные нетипизированные целочисленные константы. Его значением является индекс соответствующего ConstSpec в этом объявлении константы, начиная с нуля.

Другие вопросы по теме