为什么这件事会一直循环? ..我试图清除cin流,但仍然循环,如果我输入的东西以外的数字。Cin递归函数
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();
}
好它的工作原理,当我把明确忽略过,但谁能告诉我为什么? –