title: can an abstract class inherit from a "normal" class?
body: <p>I am looking for a useful example of multiple inheritance in C++ and found an example for Window-creation here: <a href="https://stackoverflow.com/questions/573913/a-use-for-multiple-inheritance">A use for multiple inheritance?</a> and modified it a bit. It conceptually looks like this:</p>
  
  <pre><code>class Window
  class Skinable  // abstract
  class Draggable // abstract
  class DraggableSkinnableWindow : Window, Draggable, Skinnable
  </code></pre>
  
  <p>I think this is supposed to be a good example where MI makes sense. Since it doesn't make sense to implement a class of Skinable, it should be defined abstract.</p>
  
  <p>Now: How would this look like if I would not use the concept of MI.
  I would have used a simple hierarchical structure like this:</p>
  
  <pre><code>class  Window
  class Dragable : public Window
  class Skinable : public Dragable
  class DraggableSkinnableWindow : Skinnable
  </code></pre>
  
  <p>I still want Dragable and Skinable to be abstract as well but is that even possible? Is the second example even a good solution for the same context but not using MI?</p>
  
  <p>Thank you in advance!</p>