Condividi tramite


Avviso del compilatore (livello 4) C4625

'derived class': il costruttore di copia è stato definito in modo implicito come eliminato perché un costruttore di copia della classe di base è inaccessibile o è stato eliminato

Un costruttore di copia è stato eliminato o non è accessibile in una classe di base e quindi non è stato generato per una classe derivata. Qualsiasi tentativo di copiare un oggetto di questo tipo causerà un errore del compilatore.

Per impostazione predefinita, questo avviso non è attivo. Per altre informazioni, vedere Avvisi del compilatore disattivati per impostazione predefinita .

Esempio

L'esempio seguente genera l'errore C4625 e mostra come risolverlo.

// 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