Chapter 34. Ten Features Not Covered in This Book

In This Chapter

  • The goto command

  • The ternary operator

  • Binary logic

  • Enumerated types

  • Namespaces

  • Pure virtual functions

  • The string class

  • Multiple inheritance

  • Templates and the Standard Template Library

  • The 2009 C++ Standard

The C++ language contains so many features that covering every one in a single book — especially a book intended for beginning programmers — is impossible. Fortunately, you don't need to master all of the features of the language in order to write big, real-world programs.

Nevertheless, you may want to look ahead at some of the features that didn't make the cut for this beginner's book, just in case you see them in other people's programs.

The goto Command

This command goes all the way back to C, the progenitor of C++. In principle, using this command is easy. You can place goto label; anywhere you want. When C++ comes across this command, control passes immediately to the label, as demonstrated in this code snippet:

for(;;)
{
    if (conditional expression)
    {
        goto outahere;
    }
    // ...whatever you want...
  }
outahere:
  // ...program continues here...

In practice, however, goto introduces a lot of ways to screw up — many more than I can go into here. In any case, it didn't take long before programmers noticed that the two most common uses of the goto were to exit loops and to go to the next case within a loop. The C Standards Committee introduced break and continue and almost completely removed the need for the goto command. I can say that ...

Get Beginning Programming with C++ For Dummies® now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.