#include "Point.h" Point Helper(const Point &parg) { // 4) no constructor; pass-by-reference Point p4; // 5) default constructor p4 = parg; // 6) assignment operator return p4; // 7) copy constructor copies p4 into // main()'s stack frame } int main(int argc, char **argv) { Point p1(1, 1); // 1) 2-arg constructor Point p2 = p1; // 2) copy constructor Point p3 = Helper(p1); // 8) p3 initialized by copy constructor from // Helper()'s also-copied instance (see step 7) return 0; }