Udostępnij za pomocą


Błąd kompilatora C2600

"function" : nie można zdefiniować specjalnej funkcji składowej wygenerowanej przez kompilator (należy zadeklarować w pierwszej klasie)

Uwagi

Zanim można zdefiniować funkcje składowe, takie jak konstruktory lub destruktory dla klasy, muszą być zadeklarowane w klasie. Kompilator może generować domyślne konstruktory i destruktory (nazywane specjalnymi funkcjami składowymi), jeśli żadna z nich nie jest zadeklarowana w klasie. Jeśli jednak zdefiniujesz jedną z tych funkcji bez zgodnej deklaracji w klasie, kompilator wykryje konflikt.

Aby naprawić ten błąd, w deklaracji klasy zadeklaruj każdą funkcję składową zdefiniowaną poza deklaracją klasy.

Przykład

Poniższy przykład generuje C2600:

// C2600.cpp
// compile with: /c
class C {};
C::~C() {}   // C2600

class D {
   D::~D();
};

D::~D() {}