title: A virtual function that must be overridden
body: <p>Consider a base class <code>class Base</code> which has a function <code>virtual void foo(void)</code>. This function is implemented in <code>Base</code>; i.e. is not pure virtual.</p>
  
  <p>Is there a pattern I can use which when inheriting from this class, i.e. <code>class Child : public Base</code>, compels me to override <code>foo</code>?</p>