Sdílet prostřednictvím


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

'class' : zadaných více operátorů přiřazení

Třída má více operátorů přiřazení 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 C4522.

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

using namespace std;
class A {
public:
   A& operator=( A & o ) { cout << "A&" << endl; return *this; }
   A& operator=( const A &co ) { cout << "const A&" << endl; return *this; }   // C4522
};

int main() {
   A o1, o2;
   o2 = o1;
   const A o3;
   o1 = o3;
}