// Shape.h // Definizione di una classe astratta Shape #ifndef SHAPE_H #define SHAPE_H class Shape { public: // metodi virtuali. Abilitazione al binding // dinamico per eventuale overriding virtual double area() const { return 0.0; } virtual double volume() const { return 0.0; } // metodi virtuali puri. Devrà esserne fatto // l'overriding nelle classi derivate virtual void print() const = 0; }; #endif