Constantes e iota en Go
Constantes sin tipo e iota, que es como Go escribe un enum.
type State int
const (
StateIdle State = iota
StateRunning
StateDone
)
const (
_ = iota
KB = 1 << (10 * iota)
MB
)
func (s State) String() string {
names := [...]string{"idle", "running", "done"}
if s < 0 || int(s) >= len(names) {
return "unknown"
}
return names[s]
}
Cómo funciona
iotacuenta desde cero dentro de un bloque const.- El identificador blanco salta un valor, y así KB arranca en 1 << 10.
- Un método String vuelve la constante algo imprimible.
Palabras clave y builtins usados aquí
constfuncifintlenreturnstringtype
El intento, en números
- Líneas
- 21
- Caracteres a escribir
- 271
- Tokens
- 75
- Ritmo de tres estrellas
- 80 tpm
Al ritmo de tres estrellas de 80 tokens por minuto, este intento toma unos 56 segundos.
Paso 3 de 5 en Variables y tipos; paso 3 de 30 en Fundamentos del lenguaje.