title: Move constructor for derived class
body: <p>I have 2 classes:</p>
  
  <pre><code>template&lt;typename T&gt;
  class base{
      T t;
  public:
      base(base &amp;&amp;b): t(std::move(b.t)){}
  };
  
  template&lt;typename T, typename T2&gt;
  class derived : protected base&lt;T&gt;{
      T2 t2;
  public:
      derived(derived &amp;&amp;d): base&lt;T&gt;(std::move(d)), t2(std::move(d.t2)){}
  };
  </code></pre>
  
  <p>I move entire <code>d</code> object in the <code>derived</code> <code>move-constructor</code> to initialize <code>base</code> part and <code>d</code> becomes invalid but I still need it to use it's part for <code>t2</code> initialization</p>
  
  <p>Is it possible to do such a thing?</p>