getline を使用してテキストの文字列を読み込もうとしています。何らかの理由で、「選択内容を入力してください」が 2 回表示されます。
Please enter your selection
Please enter your selection
無効なテキストを入力すると、再びループし、その後ループごとに 1 回だけ出力されます。
while (valid == false) {
cout << "Please enter your selection" << endl;
getline (cin,selection);
// I have a function here which checks if the string is valid and sets it to true
// if it is valid. This function works fine, so I have not included it here. The while
// look breaks correctly if the user enters valid input.
}
なぜこれが起こっているのか、誰にも分かりますか?
ありがとうございました