Sdílet prostřednictvím


Upozornění kompilátoru (úroveň 3) C4521

'class' : zadaných více konstruktorů kopírování

Třída má více konstruktorů kopírování jednoho typu. Toto upozornění je informativní; konstruktory jsou v programu volatelné.

K potlačení tohoto upozornění použijte direktivu pragma upozornění .

Příklad

Následující ukázka vygeneruje C4521.

// C4521.cpp
// compile with: /EHsc /W3
#include <iostream>

using namespace std;
class A {
public:
   A() { cout << "A's default constructor" << endl; }
   A( A &o ) { cout << "A&" << endl; }
   A( const A &co ) { cout << "const A&" << endl; }   // C4521
};

int main() {
   A o1;         // Calls default constructor.
   A o2( o1 );   // Calls A( A& ).
   const A o3;   // Calls default constructor.
   A o4( o3 );   // Calls A( const A& ).
}