Giacomino
2006-10-18 10:11:01 UTC
Salve a tutti
In C++ non esiste il costrutto interface come in Java, ma ho letto che
è possibile "simularlo" attraverso l'eredità virtuale di una classe
astratta pura. Mi spiego meglio con un esempio:
// la mia interfaccia
class Interface
{
public:
virtuual void methodA() = 0;
virtual int methodB(int x, int y) = 0;
};
// la mia classe Derived estende una classe base ed implementa un
interfaccia
class Derived : public Base, public virtual Interface
{ ... };
Mi chiedo:
- è questo il modo (più) giusto per raggiungere l'obiettivo
prefissatomi?
- dal punto di vista sintattico, ho qualche implicazione?
- quali sono le implicazioni in termini di performance e di spazio
occupato?
Spero di essere stato abbastanza chiaro. Grazie anticipatamente.
In C++ non esiste il costrutto interface come in Java, ma ho letto che
è possibile "simularlo" attraverso l'eredità virtuale di una classe
astratta pura. Mi spiego meglio con un esempio:
// la mia interfaccia
class Interface
{
public:
virtuual void methodA() = 0;
virtual int methodB(int x, int y) = 0;
};
// la mia classe Derived estende una classe base ed implementa un
interfaccia
class Derived : public Base, public virtual Interface
{ ... };
Mi chiedo:
- è questo il modo (più) giusto per raggiungere l'obiettivo
prefissatomi?
- dal punto di vista sintattico, ho qualche implicazione?
- quali sono le implicazioni in termini di performance e di spazio
occupato?
Spero di essere stato abbastanza chiaro. Grazie anticipatamente.