为什么不是这个?
cin.ignore (getchar(),'\n');
我不是一个专业的程序员,我几乎不能认为自己是一个业余爱好者,但这是我的一点努力。
在仔细研究了网络上所有可能简单、便携和易于理解的解决方案之后(尤其是对于像我这样的新手),我还没有看到任何真正可以接受的东西(尤其是对于像我这样的新手)。
经过无数次不成功的尝试,我写了这行。它奏效了!
对我来说,这听起来像是一个非常优雅的解决方案。
我的意思是:它只是一行代码,很容易记住,它不需要任何进一步声明的变量,你不必进行太多抽象来理解它。
它有效,在每种情况下我都尝试过。
如果这不是一个好的解决方案,有没有人愿意解释它?
[编辑]
谢谢大家所有的正确答案。但无论是我还是你都没有抓住重点。我要问的不是我发布的解决方案是否有效,因为它有效!至少在我的计算机上,以及我正在处理的所有可执行文件中(我不想显得固执,请自己尝试夺走我的功劳。最后是我使用的一个示例)。你所说的副作用都没有出现。该行回答我的第一次输入,它只回答输入 - 而不是“任何”字符。我担心的是我没有看到它在任何地方写过,并认为自己是程序员中最穷的,这让我惊讶于从头开始找到解决方案。
short WaitForEnter ()
{
cout << "Press ENTER to continue\n";
cin.ignore (getchar(),'\n');
return 0;
}