Consider:
class A { public: virtual void update() = 0; } class B : public A { public: void update() { /* stuff goes in here... */ }
You have two options.
1) Don't worry about it.
2) Don't use virtual functions. However, not using virtual functions can just move the size into your code, as your code gets more complex.