Compartir a través de


Advertencia del compilador (nivel 4) C4625

'derived class': el constructor de copias se definió implícitamente como eliminado porque un constructor de copias de clase base es inaccesible o se ha eliminado

Se eliminó un constructor de copias o no está accesible en una clase base y, por tanto, no se generó para una clase derivada. Cualquier intento de copiar un objeto de este tipo provocará un error del compilador.

De forma predeterminada, esta advertencia está desactivada. Vea Advertencias del compilador desactivadas de forma predeterminada para más información.

Ejemplo

El siguiente ejemplo genera el error C4625 y muestra cómo corregirlo.

// C4625.cpp
// compile with: /W4 /c
#pragma warning(default : 4625)

struct A {
   A() {}

private:
   A(const A&) {}
};

struct C : private virtual A {};
struct B :  C {};   // C4625 no copy constructor

struct D : A {};
struct E :  D {};   // OK