Class-Type Objects

An object is a typed region of storage in the execution environment; in addition to retaining state information, it also defines behavior. Class-type objects are defined using class-name. Consider the following code fragment:

class Account                      // Class name is Account.
{
public:
            Account();             // Default constructor.
            Account( double );     // Construct from double.
    double& Deposit( double );
    double& Withdraw( double, int );
    ...
}:

Account CheckingAccount;           // Define object of class type.

The preceding code declares a class (a new type) called Account. It then uses this new type to define an object called CheckingAccount.

The following operations are defined by C++ for objects of class type:

The following are examples of initialization using user-defined copy constructors:

Overloaded Operators in Chapter 12 explains how to redefine other operators on a class-by-class basis.