This documentation is archived and is not being maintained.

Compiler Error C2652

'identifier' : illegal copy constructor: first parameter must not be an 'identifier'

The first parameter in the copy constructor has the same type as the class, structure, or union for which it is defined. The first parameter can be a reference to the type but not the type itself.


// C2652.cpp
class A
   A( A );     // C2652, takes an A
class B
   B( B& );    // OK, reference to B