Structs en Julia
Inmutables por defecto; mutable es una promesa aparte.
# Structs are immutable by default; mutable opts in per type.
struct Target
name::String
magnitude::Float64
end
mutable struct DomeState
open::Bool
azimuth::Int
end
vega = Target("Vega", 0.03)
println("$(vega.name) at magnitude $(vega.magnitude)")
dome = DomeState(false, 0)
dome.open = true
dome.azimuth = 245
println("Dome open at $(dome.azimuth) degrees")
Cómo funciona
- Los campos de
struct Targetquedan fijos al construir. mutable struct DomeStateacepta asignación.- La construcción es posicional:
Target("Vega", 0.03).
Palabras clave y builtins usados aquí
BoolDomeStateFloat64IntStringTargetendfalsemutablestructtrue
El intento, en números
- Líneas
- 18
- Caracteres a escribir
- 361
- Tokens
- 79
- Ritmo de tres estrellas
- 70 tpm
Al ritmo de tres estrellas de 70 tokens por minuto, este intento toma unos 68 segundos.
Paso 1 de 3 en Tipos; paso 16 de 27 en Fundamentos del lenguaje.