Salve a tutti,
sono qui con un'altrodubbio riguardante ai costruitti sulle gestioni delle eccezioni.
Il primo che ci è stato fatto vedere è sull'uso del comando "throw" ed è qualcosa del seguente tipo:
Già qui non ho capito bene come funziona, ovvero chiama una funzion a mio piacimento in caso la condizione dell'if è falsa? e che differenza c'è tra il "chiamarla normalmente" ed usare il comando throw ?codice:if(<condizione>) { <istruzioni> } else throw eccezione();
Un'altro esempio che c'è stato fatto vedere al volo è con try e catch in questo modo:
In quest'altro caso cosa fa? Prova a svolgere delle istruzioni e se ritorna qualche errore fa ciò che c'è scritto nel catch? E quel "domain_error" che sarebbe?codice:try{ <istruzioni> } catch( domain_error){ <istruzioni> }
Oppure "throw" segnala un eccezione e la catch riceve quel tipo di eccezione e si regola di conseguenza? Potreste fari qualche esempio di codice funzionante per capire meglio?
Vi ringrazio in anticipo,
Neptune.