Почему эта штука держится? .. Я попробовал очистить поток cin, но все же он петли, если я вхожу в нечто иное, чем число.Cin in recursive function
void AskQuestion()
{
DisplayQuestion();
bool Exit = false;
int input = 0;
cout<<"Input : ";
if(!(cin>>input))
{
cout<<"Invalid Input"<<endl;
cin.ignore(10000,'\n');
cin.clear();
}
else
{
Exit = ProcessInput(input);
}
if(!Exit) AskQuestion();
}
Хорошо это работает, когда я ставлю перед тем ясно игнорировать, но может кто-нибудь сказать мне, почему? –