I was recently asked in an interview about the parameter for a copy constructor.
[Edited]
As a designer of C++ language implementing copy constructor feature, why would you choose constant reference parameter over a const pointer to a const object.
I had a few ideas like since a pointer can be assigned to NULL which probably doesn't make sense (semantically) in a copy constructor and the fact that pointer variable is an independent object (which would probably not be good in terms of efficiency) whereas a reference is just an alias to the actual object (therefore a better way to pass the object).
Any other ideas?