22
Questo codice funziona;Eccezione di lancio fuori intervallo in C++
int at(int index) {
if(index < 1 || index >= size)
throw 0;
return x[index];
}
Tuttavia questo non
int at(int index) {
if(index < 1 || index >= size)
throw std::out_of_range;
return x[index];
}
ottengo l'errore "previsto espressione primaria prima ';'". Ora ... mi sorprende perché so che esiste std :: out_of_range e ho
#include <stdexcept>
Qual è la differenza tra le due funzioni? – kennytm
oops, errore di copia-incolla, ora va bene. – Suugaku
Perché 0 fuori limite? –