typestar

Arreglos dinámicos en Odin

[dynamic] crece con append y devuelve la memoria a través de delete.

package main

import "core:fmt"

main :: proc() {
    // [dynamic] grows on append; delete returns the memory.
    hauls: [dynamic]f32
    defer delete(hauls)

    append(&hauls, 12.5)
    append(&hauls, 8.0)
    append(&hauls, 15.25, 6.75)

    fmt.println(len(hauls), "hauls logged")
    fmt.printfln("first %.2f, last %.2f", hauls[0], hauls[len(hauls) - 1])
}

Cómo funciona

  1. hauls: [dynamic]f32 arranca vacío; defer delete(hauls) agenda la limpieza.
  2. append(&hauls, ...) toma un puntero y acepta varios valores de una vez.
  3. len y el indexado funcionan como en cualquier arreglo una vez adentro.

Palabras clave y builtins usados aquí

El intento, en números

Líneas
16
Caracteres a escribir
330
Tokens
87
Ritmo de tres estrellas
70 tpm

Al ritmo de tres estrellas de 70 tokens por minuto, este intento toma unos 75 segundos.

Escribe este fragmento

Paso 2 de 3 en Colecciones; paso 11 de 27 en Fundamentos del lenguaje.

← Anterior Siguiente →