// File: ex4-6.cpp - test when a constructor is called #include <iostream> using namespace std; class Z { public: Z() { cout << "Z's constructor is called now" << endl;} }; int main() { cout << "\n1. Is the constructor called?\n"; Z z; // declare a Z
cout << "\n2. Is the constructor called?\n";
Z bunch[5]; // declare a bunch of Zs
cout << "\n3. Is the constructor called?\n";
Z* ptrZ; // declare a pointer to Z
cout << "\n4. Is the constructor called?\n";
Z* a_new_prtZ = new Z; // allocate memory for a Z
cout << "\n5. Is the constructor called?\n";
Z* threeZ = new Z[3]; // allocate memory for 3 Zs
cout << "\n6. Is the constructor called?\n";
Z** ptr_ptr_Z; // declare a ptr to ptr to a Z
cout << "\n7. Is the constructor called?\n";
Z** ptr_ptr_newZ = new Z*; // allocate memory for a ptr to ptr to a Z }