// File: vtest1.cpp // // Testing virtual functions #include #include "Box.h" #include "Cube.h" #include "ColorCube.h" using namespace std ; void foo(Box& boxref) { boxref.identify() ; // identify is VIRTUAL } int main() { Box dummy1, dummy2, dummy3 ; Box b(1.2, 2.4, 2.4) ; Cube dummy4, dummy5, dummy6 ; Cube c(7.1) ; ColorCube dummy7, dummy8, dummy9 ; ColorCube cc(2.3, ColorCube::blue) ; cout << "Box identify:\n" ; foo(b) ; cout << "\nCube identify:\n" ; foo(c) ; cout << "\nColorCube identify:\n" ; foo(cc) ; Box::report() ; cout << "\n\nSome sizes:\n" ; cout << " sizeof(Box) = " << sizeof(Box) << "\n" ; cout << " sizeof(Cube) = " << sizeof(Cube) << "\n" ; cout << " sizeof(ColorCube) = " << sizeof(ColorCube) << "\n" ; }