Archivo AhC++ Indefinido referencia a VTABLE y la herencia
#ifndef A_H_
#define A_H_
class A {
public:
virtual ~A();
virtual void doWork();
};
#endif
Archivo Child.h
#ifndef CHILD_H_
#define CHILD_H_
#include "A.h"
class Child: public A {
private:
int x,y;
public:
Child();
~Child();
void doWork();
};
#endif
Y Child.cpp
#include "Child.h"
Child::Child(){
x = 5;
}
Child::~Child(){...}
void Child::doWork(){...};
El compilador dice que hay una referencia indefinida a vtable para A
. He intentado muchas cosas diferentes y, sin embargo, ninguna ha funcionado.
Mi objetivo es que la clase A
sea una interfaz, y separar el código de implementación de los encabezados.
Debe definir cada función virtual no pura que declare. No necesita definir una función no virtual que declare pero no use. –