@ -18,6 +18,7 @@ public:
if (is && s.age >= 20 && s.age <= 60)
break;
is.clear(0);
clearerr(stdin); // 遇到ctrl+z或ctrl+d等情况下,clear并不能直接修复流,需要使用clearerr
is.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
}
is.ignore(std::numeric_limits<std::streamsize>::max(), '\n'); // 清除之前遗漏的多余字符和回车