30/09/12 21:12
pierotofy
Io di solito uso questa:
/* Handles bad input to read an integer */
int read_int(){
string input;
int number = 0;
while (true) {
getline(cin, input);
stringstream mystream(input);
if (mystream >> number) break;
return -1; // Invalid number
}
return number;
}
Se l'input non e' un intero, ritorna -1 (ovviamente se devi leggere -1, cambialo con qualcos'altro oppure lancia un'eccezione).