shinoby87
07-06-2008, 14:06
Salve a tutti, vorrei una delucidazione su come si implementano delle interfacce in C++
io ho creato una classe di questo tipo
Class IShape {
public
virtual void draw() = 0;
}
in questo modo dichiaro il late binding e l' "astrattezza" della funzione.
Nelle classi che estendono quest'ultima io definisco
class Figura1 : public IShape{
public:
virtual void draw();
}
void Figura1 draw() { //qualcosa };
La mia domanda è: devo per forza inserire nella dichiarazione della classe (che andrebbe in un header) la dichiarazione della funzione "virtual void draw();" ? In questo modo dovrei scrivere ogni volta tutte le funzioni dell'interfaccia nelle dichiarazioni delle classi, quando dovrebbero essere ereditate automaticamente.
Chiedo scusa per aver aperto il precedente thread in modo scorretto.
io ho creato una classe di questo tipo
Class IShape {
public
virtual void draw() = 0;
}
in questo modo dichiaro il late binding e l' "astrattezza" della funzione.
Nelle classi che estendono quest'ultima io definisco
class Figura1 : public IShape{
public:
virtual void draw();
}
void Figura1 draw() { //qualcosa };
La mia domanda è: devo per forza inserire nella dichiarazione della classe (che andrebbe in un header) la dichiarazione della funzione "virtual void draw();" ? In questo modo dovrei scrivere ogni volta tutte le funzioni dell'interfaccia nelle dichiarazioni delle classi, quando dovrebbero essere ereditate automaticamente.
Chiedo scusa per aver aperto il precedente thread in modo scorretto.