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

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

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

Burak Serdar 22.02.2023 04:41
Конечные и Readonly классы в PHP
Конечные и Readonly классы в PHP
В прошлом, когда вы не хотели, чтобы другие классы расширяли определенный класс, вы могли пометить его как final.
От React к React Native: Руководство для начинающих по разработке мобильных приложений с использованием React
От React к React Native: Руководство для начинающих по разработке мобильных приложений с использованием React
Если вы уже умеете работать с React, создание мобильных приложений для iOS и Android - это новое приключение, в котором вы сможете применить свои...
БЭМ: Конвенция об именовании CSS
БЭМ: Конвенция об именовании CSS
Я часто вижу беспорядочный код CSS, особенно если проект большой. Кроме того, я совершал эту ошибку в профессиональных или личных проектах и...
Революционная веб-разработка ServiceNow
Революционная веб-разработка ServiceNow
В быстро развивающемся мире веб-разработки ServiceNow для достижения успеха крайне важно оставаться на вершине последних тенденций и технологий. По...
Как добавить SEO(Search Engine Optimization) в наше веб-приложение и как это работает?
Как добавить SEO(Search Engine Optimization) в наше веб-приложение и как это работает?
Заголовок веб-страницы играет наиболее важную роль в SEO, он помогает поисковой системе понять, о чем ваш сайт.
Конфигурация Jest в angular
Конфигурация Jest в angular
В этой статье я рассказываю обо всех необходимых шагах, которые нужно выполнить при настройке jest в angular.
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 в этом объявлении константы, начиная с нуля.

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