Mostra la linea di un errore con Throw ()<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Hey,
Sto cercando di gestire alcuni errori inevitabili con Try and Throw. Guardando Throw nell'Indice dice:
Gettare ( "testo")
Funzione
Restituisce a Gettare . Se includi testo , gettando negozi testo in un globale exception_msg . Se testo inizia con "!", il lancio crea un messaggio di errore su dove è stata rilevata l'eccezione.
Così ho provato questo per ottenere la riga di errore:
provare (abcdef;
,
throw ("! nice error.");
);
mostra (exception_msg);
Questo non sembra funzionare come previsto, dal momento che non mostra la linea che ha creato l'errore o fornisce un numero di linea. Sembra che le informazioni siano memorizzate in exception_msg, ma l'esecuzione dello script si interrompe dopo il lancio, quindi non posso visualizzarlo.
Qualcuno ha avuto successo nell'ottenere la linea che ha causato l'errore?
Ri: Mostra la linea di un errore con Throw ()Credo di aver capito - il Throw deve essere contenuto all'interno di una funzione in modo che l'esecuzione dello script continui al di fuori della funzione:
doMath = Funzione ({a, b, c}, {Default Local},
:: risultato = a * b * c;
Provare(
ABCDE;
,
Throw ("! Nice error.");
);
);
mostra (risultato);
mostra (exception_msg);
e ottengo dal registro:
exception_msg = {"Name Unresolved: abcdef" (1, "abcdef", abcdef)};
C'è un modo per ottenere un numero di linea reale? Potrebbe diventare piuttosto disordinato cercando di trovare dove si trova quella linea!