Udostępnij za pośrednictwem


C4626 (poziom 4) ostrzeżenia kompilatora

'pochodzi z klasy': nie można wygenerować operatorem przypisania, ponieważ z operatorem przypisania klasy podstawowej jest niedostępny

Operator przypisania nie był dostępny w klasie bazowej i dlatego nie został wygenerowany w klasie pochodnej.Wszelkie próby ponownego przypisywania obiektów tego typu spowoduje błąd kompilatora.

To ostrzeżenie jest domyślnie wyłączona.Zobacz Kompilator ostrzeżenia że są wyłączone domyślnie Aby uzyskać więcej informacji.

Poniższy przykład generuje C4626:

// C4626
// compile with: /W4
#pragma warning(default : 4626)
class B
{
// public:
   B& operator = (const B&)
   {
      return *this;
   }
};

class D : public B
{

}; // C4626, make B's copy constructor public

int main()
{
   D m;
   D n;
   // m = n;   // this line will cause an error
}