Chapter 6

Gaining Proficiency with Classes and Objects


  • How to write your own classes with methods and data members
  • How to control access to your methods and data members
  • How to use objects on the stack and on the heap
  • What the life cycle of an object is
  • How to write code that is executed when an object is created or destroyed
  • How to write code to copy or assign objects

As an object-oriented language, C++ provides facilities for using objects and for writing object definitions, called classes. You can certainly write programs in C++ without classes and objects, but by doing so, you do not take advantage of the most fundamental and useful aspect of the language; writing a C++ program without classes is like traveling to Paris and eating at McDonald’s. In order to use classes and objects effectively, you must understand their syntax and capabilities.

Chapter 1 reviewed the basic syntax of class definitions. Chapter 3 introduced the object-oriented approach to programming in C++ and presented specific design strategies for classes and objects. This chapter describes the fundamental concepts involved in using classes and objects, including writing class definitions, defining methods, using objects on the stack and the heap, writing constructors, default constructors, compiler-generated constructors, constructor initializers (known as ctor-initializers), copy constructors, initializer-list constructors, destructors, and assignment operators. Even if you are ...

Get Professional C++, Second Edition now with the O’Reilly learning platform.

O’Reilly members experience live online training, plus books, videos, and digital content from nearly 200 publishers.