Partager via


Avertissement du compilateur (niveau 4) C4626

'classe dérivée' : l'opérateur d'assignation n'a pas pu être généré parce qu'un opérateur d'assignation de la classe de base est inaccessible

Un opérateur d'assignation était inaccessible dans une classe de base et il n'a donc pas été généré pour une classe dérivée. Toute tentative d'assigner des objets de ce type provoquera une erreur du compilateur.

Cet avertissement est désactivé par défaut. Pour plus d'informations, consultez Avertissements du compilateur désactivés par défaut.

L'exemple suivant génère l'erreur 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
}