title: Virtual Methods and Multiple Inheritance
body: <p>Maybe it is a very basic question but my object orientation experience come form Java, thats why I am not sure about this one.</p>
  
  <pre><code>class A
     |
  class B
     |
  class C
  </code></pre>
  
  <p>I have <code>class A</code> which has <code>A::doSmth()</code> as a <code>virtual protected</code> method. My <code>class B</code> inherit from <code>class A</code> and re-implement <code>doSmth()</code> as a <code>private</code> method. Now I want to create <code>class C</code> and I want to modify <code>doSmth()</code> method for this class. I guess I need to make <code>doSmth()</code> method in <code>class B</code> virtual, yes? Or since <code>class B</code> inherit from <code>class A</code> and <code>doSmth()</code> is virtual in there, I can simpley modify it in <code>class C</code> as well?</p>