Propagare i fallimenti con try
Propagare gli errori verso l'alto con una sola parola chiave
Propagare i fallimenti con try è una lezione Zig Academy gratuita su CoddyKit. Questa è la lezione 3 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Zig Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Zig Academy include 4 lezioni in totale.
La gestione diventa ripetitiva
Scrivere un if-else intorno a ogni chiamata soggetta a fallimento per inoltrare l'errore diventa presto prolisso. Zig offre una scorciatoia: la parola chiave try.
try estrae il valore o restituisce l'errore
Inserisca try prima di una chiamata soggetta a fallimento. In caso di successo fornisce il valore; in caso di errore restituisce quell'errore dalla funzione corrente.
const n = try parse(input);È solo zucchero sintattico
Quella riga equivale esattamente a catturare l'errore e restituirlo manualmente. try scrive semplicemente il codice ripetitivo al posto Suo.
const n = parse(input) catch |e| return e;La funzione deve poter fallire
Poiché try può restituire un errore, la funzione che lo contiene deve avere un tipo restituito con una union con errore. Altrimenti il compilatore lo rifiuta.
fn run() !void {
const n = try parse(input);
}Concatenare molti try
Inserisca diversi try consecutivi. Ognuno interrompe subito la funzione in caso di fallimento, così il percorso di successo si legge dall'alto verso il basso.
const f = try open(path);
const data = try read(f);try nel mezzo delle espressioni
Può inserire try direttamente all'interno di un'espressione più ampia. Il valore estratto confluisce direttamente nella chiamata o nel calcolo circostante.
const total = base + try parse(input);try con chiamate void
Anche quando una chiamata restituisce !void, usi try per inoltrare ogni fallimento. Non riceve alcun valore, ma solo il return anticipato in caso di errore.
try file.writeAll(data);Gli errori risalgono nello stack
Con try a ogni livello, un fallimento profondo si propaga fino in cima, finché un chiamante decide finalmente di gestirlo.
Un percorso di successo leggibile
Il vantaggio principale è la chiarezza: l'inoltro degli errori si riduce a una sola parola chiave, così la logica principale rimane in primo piano.
try non gestisce gli errori
Ricordi che try inoltra soltanto un errore: non lo recupera. Per reagire localmente deve invece usare catch.
Quando inoltrare l'errore
Usi try quando la scelta corretta è lasciare che sia il chiamante a gestire il fallimento. La maggior parte delle funzioni intermedie si limita a inoltrare gli errori verso l'alto.
Verifica rapida
Scrive try doThing() all'interno di una funzione. Che cosa accade se doThing restituisce un errore?
Riepilogo
Ha imparato che try estrae il valore in caso di successo e restituisce l'errore altrimenti. È una forma abbreviata di catch e inoltro, che mantiene il codice pulito. ✅
Impara Zig con un tutor IA — gratis
Scrivi ed esegui vero codice nel tuo browser, ricevi aiuto istantaneo da un tutor IA disponibile 24/7, e riprendi da dove hai lasciato sul web o nell'app.
- Corsi
- 30
- Lezioni
- 120
Domande Frequenti
La lezione «Propagare i fallimenti con try» è gratuita?
Sì — il testo completo di «Propagare i fallimenti con try» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Zig Academy, passa a CoddyKit PRO. Il corso Zig Academy include 4 lezioni in totale.
Cosa imparerò in «Propagare i fallimenti con try»?
Propagare gli errori verso l'alto con una sola parola chiave Eserciti Zig Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.
Ho bisogno di esperienza per iniziare Zig Academy?
Non è richiesta alcuna esperienza precedente. Zig Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 3 di 4.
Quanto tempo richiede la lezione «Propagare i fallimenti con try»?
La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.
Posso scrivere ed eseguire codice in questa lezione Zig Academy?
Sì. Ogni lezione Zig Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.
Tutte le lezioni di questo corso
- Set di errori e unione !T
- Restituire errori dalle funzioni
- Propagare i fallimenti con try
- Set di errori inferiti