Salve, sto scrivendo una classe template per uno stack e all'interno della funzione pop faccio uso di di una throw out_of_range della libreria stdexceptio.
Io non sono ancora molto pratico è vorrei sapere come faccio a gestire l'eccezzione nel main. Spero ci sia qualcuno che mi può dare una mano, grazie.
Il codice del metodo è:
codice:
template <class T>
T stack<T>::pop(){
if (size==0) throw std::out_of_range("Pila vuota");;
testa=(testa)->next;
dat=testa->dato;
size--;
return dat;
};
Mentre nel main vorrei gestire l'eccezione causata dallo stack vuoto, stampando a video "Pila vuota". Come faccio a recuperare la stringa di throw std:
ut_of_range?
codice:
int main(){
int i;
stack<int>* a=new stack<int>;
try {i=a->pop();}
catch (std::out_of_range &) {
//qui vorrei stampare la stringa che si trova in pop out_of_range ???
}
return 0;
}