title: C++ template casting on derived classes
body: <p>I have 3 class which derived from each other:</p>
  
  <pre><code>class Basic{
  ...
  }
  
  class Extended : public Basic{
  ...
  }
  
  class Full : public Extended{
  ...
  }
  </code></pre>
  
  <p>I have a template class which holds 5-5 from this classes:</p>
  
  <pre><code>template &lt;class T&gt;
      class group{
      public:
               ...
      private:
          T one, two, three, four, five;
      };
  
  group&lt;Basic&gt; basicGroup;
  group&lt;Extended&gt; extendedGroup;
  group&lt;Full&gt; fullGroup;
  </code></pre>
  
  <p>Can I easily cast for example fullGroup to basicGroup or extendedGroup to basicGroup? (I just want to cast upward)</p>