c++ - 如何在 C++ 中创建一个执行一次的无限循环

标签 c++ loops

我正在用 C++ 创建游戏。我目前的目标是永远循环检查玩家的健康状况,以检查他是否已经死亡。当他在的时候,我想让它知道<<你死了。但是因为 cout << 是 在while语句中,一直检查健康,结果输出并执行cout << 多次。我希望它永远循环检查健康状况,如果健康状况 < 1,我希望它输出 <<“你死了”;只有一次。有没有办法告诉 while 语句只执行一次?这是我当前的 while 语句:

bool gamerunning = true;

while (gamerunning == true) //While game is running...
{
if (health < 1) //If player is dead...
{
cout << "You are dead";
}
}

执行此代码多次输出“you are dead”。我希望它继续检查此循环中的运行状况,但我希望 cout 执行一次,因此它不会一遍又一遍地重复相同的消息。如果您能提供一个小例子来说明如何阻止这种情况,我们将不胜感激。非常感谢大家!

最佳答案

听起来你想在玩家死亡时停止游戏运行,在这种情况下你想要这样:

while (gamerunning == true) //While game is running...
{
  if (health < 1) //If player is dead...
  {
    cout << "You are dead";
    gamerunning = false;
  }
}

如果没有,那么你可以保留另一个 bool 来说明是否发生了死亡输出:

bool deadOutput = false;
while (gamerunning == true) //While game is running...
{
  if (health < 1 && !deadOutput) //If player is dead...
  {
    cout << "You are dead";
    deadOutput = true;
  }
}

关于c++ - 如何在 C++ 中创建一个执行一次的无限循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14074388/

相关文章:

c++ - SQLite blob 数据类型

c++ - 如何处理连接到 CPP 中服务器的多个客户端?

c++ - 如何编写常量函数引用

java - 将switch语句放入循环java中

javascript - 打破循环的问题

c++ - OSX AUGraph 重新创建导致 badComponentType 错误

c++ - C++ 中带有模板化事件类型的中央事件调度器

javascript - 连续Jquery轮换传输?

java - 奇怪的循环输出 - Java

javascript - for 循环(但一个变量需要一个 if)