これは私が取り組んでいるものです。私のコードは、ユーザーが 1、2、または 0 の値を入力することを確認するユーザー入力を読み取ることになっています。これですべてが実行されますが、最適化に問題があります。
正しい数値を入力しても、最初は登録されません。プログラムが機能するためには、再度値を入力する必要があります。
int LogicCalculator::m_userChoice(int &number) { number = num;//assignment //output std::cout<<"Selection: "; //input std::cin>>number; //Error Checking while((number < 0 || number > 3) || !(cin >> number)) { cin.sync(); //discard unread characters in input buffer cin.clear(); //clear bad input flag cout<<"Only 1, 2 or 0 are acceptable entries. Exception No."<<endl; cout<<"Press Enter to Try Again"<<endl; if(cin.ignore()) { system("cls");//clears the screen after the user presses Enter } m_Menu(); m_userChoice(number); } return number; };
誰かがこれを解決する方法を知っていれば、私は大いに感謝します.