《C++游戏编程入门(第4版)》——2.8 使用break和continue语句

    xiaoxiao2024-04-15  108

    本节书摘来自异步社区出版社《C++游戏编程入门(第4版)》一书中的第2章,第2.8节,作者:【美】Michael Dawson(道森),更多章节内容可以访问云栖社区“异步社区”公众号查看。

    2.8 使用break和continue语句

    C++游戏编程入门(第4版)循环的行为是能够改变的,比如使用break语句立即退出循环,或者使用continue语句直接跳转到循环开始。尽管应当少用这些语句,但它们有时确实很有用。

    2.8.1 Finicky Counter程序简介

    Finicky Counter程序通过while循环从1数到10。但是该程序很挑剔,不喜欢5这个数字,所以跳过了它。该程序的运行示例如图2.8所示。

    图2.8 程序用continue语句跳过了数字5,循环以break语句结束

    从Cengage Learning网站(www.cengageptr.com/downloads)上可以下载到该程序的代码。程序位于Chapter 2文件夹中,文件名为finicky_counter.cpp。

    // Finicky Counter // Demonstrates break and continue statements #include <iostream> using namespace std; int main() {    int count = 0;    while (true)    {      count += 1;      //end loop if count is greater than 10      if (count > 10)      {         break;      }      //skip the number 5      if (count == 5)      {         continue;      }      cout << count << endl;    }    return 0; }``` ###2.8.2 创建while(true)循环 程序中使用下面一行代码来初始化循环:   ` while (true)` 从技术上来讲,这是个无限循环。在刚刚警告过要避免无限循环后就使用了一个无限循环,这显得有些奇怪,但是这个特殊的循环并不会无限循环下去,因为循环体中有退出条件。 提示  尽管while (true)循环有时能比传统循环更清晰,但也应当尽可能少使用这种循环。 ###2.8.3 使用break语句退出循环 下面的代码是循环中的退出条件:

         //end loop if count is greater than 10     if (count > 10)     {        break;     }`因为count在每次循环开始时加1,所以它最终会增加到11。当到11时,程序执行break语句(意思是“终止并退出循环”),循环结束。

    2.8.4 使用continue语句跳转到循环开始

    在显示count前,有下面几行代码:

         //skip the number 5      if (count == 5)      {         continue;      }``` continue语句的意思是“跳转到循环的开始”。在循环开始,程序验证while表达式。如果值为真,则程序再次进入循环。因此,当count等于5时,程序不会执行cout << count << endl;语句,而是回到循环开始:5被跳过,不会显示。 ###2.8.5 使用break和continue的时机
    最新回复(0)