Questi non sono proprio particolari per C++.
L'interruzione è quando si termina il programma o un'operazione particolare a causa di un problema. Esiste una funzione di libreria C++ std::abort
, ereditata dalla libreria C, che uccide il programma come se fosse un segnale esterno e non esegue i distruttori o la pulizia.
Un errore si verifica quando qualcosa va storto. In C++, molti tipi di errori non vengono necessariamente rilevati immediatamente. Il C++ specifica invece il comportamento non definito , che può comportare il danneggiamento della memoria silenziosa che può causare in seguito un comportamento anomalo misterioso.
Un errore è quando un programma fa la cosa sbagliata. Questo è un termine ingegneristico piuttosto generico. Il capo dai capelli a punta ha probabilmente più familiarità con questo concetto rispetto agli altri, perché è l'unico a cui un cliente sia realmente a conoscenza.
Un trap si verifica quando il programma rileva una condizione di errore e agisce di conseguenza.
Quindi, se si rileva che la rete è andato giù, e mostrano un messaggio per l'utente, ad esempio "non poteva continuare; il documento è stato salvato automaticamente" prima di uscire, allora si hanno intrappolato un errore e abortito, ma ciononostante c'è stato un fallimento.
Le domande di intervista forniranno un contesto che manca chiaramente per dare la spiegazione di consisi che stai cercando. –
Questo è troppo generico. Devi fornire una domanda di esempio. È, ad esempio, un errore per '# define' una parola chiave per la lingua, ma ogni compilatore ti permette di farlo senza una parola di avvertimento. Può anche essere un errore passare un parametro fuori intervallo a una funzione, che può causare l'interruzione di un programma. –
'Cos'è un trap '- vedi http://stackoverflow.com/questions/3149175/che-è-la-differenza-trap-and-interrupt – devnull