Unlike Java in C++ you have to explicitely declare the member functions that will have virtual linkage.
- Virtual linkage only works for reference and pointers. Calls to function members using the object’s value will be solved at compile time
- Declaring a virtual member function in a class will increase the instance size by the size of the vtable pointer
- Beware of the infamous symbol undefined when using abstract classes