| constructors/prog2-more.cc - An additional Point construction attempt - a trap. | Lecture 4 - slide 8 : 40 Program 5 |
#include <iostream>
#include "point.h"
using namespace std;
int f(){
Point p, q, // The default constructor is used for both p and q
q1(), // Most likely an error.
// What is it? A declaration of a parameterless point returning function.
r(11.0, 12.0), // Point(double,double) used
s(p), // The copy constructor used
t(3.0), // Point(double) used
u = t, // Another way to use the copy constructor, via an initializer
ap[10]; // The default constructor used 10 times
q = r; // default assignment - bit-wise copying, no use of copy constructor
cout << "Point p: " << p << endl; // (0,7)
cout << "Point q: " << q << endl; // (11,12) - because of the assignment q = r
cout << "Point q1: " << q1 << endl; // ?????
cout << "Point r: " << r << endl; // (11,12)
cout << "Point s: " << s << endl; // (1,9)
cout << "Point t: " << t << endl; // (3,20)
cout << "Point u: " << u << endl; // (4,22)
for(int i = 0; i < 10; i++) // (0,7) ten times
cout << "ap[" << i <<
"]: " << ap[i] << endl;
}
int main(){
f();
}