Can copy constructor admit an object of the same class as parameter, rather than reference of the object?
A: No. this is specified in the definition of the copy constructor itself. It must generate an error if a programmer specifies a copy constructor along a first argument that is an object and not a reference.
constructor with a single argument creates that constructor as conversion ctor and it can be utilized for type conversion.
Boo ( int i );
Boo BooObject = 10; // assigning int 10 Boo object