O'Reilly logo

Beginning Programming with C++ For Dummies® by Nat Coalson

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Chapter 19. Programming with Class

In This Chapter

  • Grouping data using parallel arrays

  • Grouping data in a class

  • Declaring an object

  • Creating arrays of objects

Arrays are great at handling sequences of objects of the same type, such as ints or doubles. Arrays do not work well, however, when grouping different types of data such as when we try to combine a Social Security number with the name of a person into a single record. C++ provides a structure called the class (or struct) to handle this problem.

Grouping Data

Many of the programs in earlier chapters read a series of numbers, sometimes into an array, before processing. A simple array is great for standalone values. However, many times (if not most of the time), data comes in groups of information. For example, a program may ask the user for his first name, last name, and Social Security number. Alone, any one of these values is not sufficient — only in the aggregate do the values make any sense.

You can store associated data of different types in what are known as parallel arrays. For example, I might use an array of strings called pszFirstNames to hold people's first names, a second pszLastNames to hold the last names, and a third nSocialSecurities to hold the corresponding Social Security number. I would store the data such that any given index n points to the data for a given individual.

Thus, my personal data might be at offset 3. In that case, szFirstNames[3] would point to "Stephen," szLastNames[3] would point to "Davis," and ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required