Menu
Coddy logo textTech

Riepilogo - Tabella di sola lettura

Fa parte della sezione Logica e flusso del percorso Lua di Coddy. Lezione 23 di 54.

challenge icon

Sfida

Facile

Scrivi una funzione makeReadOnly che prende original e restituisce una versione di sola lettura della tabella.

Crea una tabella proxy con una metatabella che consenta di leggere dalla tabella originale, ma impedisca qualsiasi modifica.

Logica:

  • Crea una tabella proxy vuota
  • Crea una metatabella con __index impostato sulla tabella originale (per consentire la lettura)
  • Aggiungi __newindex alla metatabella, in modo che non faccia nulla (per bloccare le modifiche)
  • Collega la metatabella alla tabella proxy usando setmetatable()
  • Restituisci la tabella proxy

Parametri:

  • original (tabella): la tabella da proteggere dalle modifiche

Valori restituiti: una tabella proxy che fornisce accesso in sola lettura alla tabella originale (tabella)

Provalo tu

function makeReadOnly(original)
    -- Scrivi il codice qui
end

Tutte le lezioni di Logica e flusso

Esercitati da solo: Compilatore Lua online