Buongiorno a tutti,
Stavo facendo degli esperimenti con le classi derivate, ho visto che il core di arduino ne fà uso, pertanto ho pensato che si potessero utilizzare anche normalmente negli sketch.
Ho fatto un esperimento, creando una classe base 'animale' e provando a crearne una derivata 'cane' ma ottengo un errore in compilazione.
Allego sorgenti delle classi
animale.h
class animale
{
private:
public:
animale();
virtual ~animale();
void chiama();
virtual int zampe();
};
animale.cpp
#include "animale.h"
animale::animale()
{
// TODO Auto-generated constructor stub
}
animale::~animale()
{
// TODO Auto-generated destructor stub
}
void animale::chiama()
{
// chiama l'animale
}
cane.h
#include "animale.h"
class cane: public animale
{
private:
public:
cane();
virtual ~cane();
int zampe();
};
cane.cpp
#include "cane.h"
cane::cane()
{
// TODO Auto-generated constructor stub
}
cane::~cane()
{
// TODO Auto-generated destructor stub
}
int cane::zampe()
{
return 2;
}
L'errore che ritorna è :
animale.cpp.o:(.rodata._ZTV7animale+0x8): undefined reference to `animale::zampe()'
Mi è sfuggito qualcosa ?