title: std::apply to constructor in a templated function
body: <p>I am writing generic code, and I need to call the constructor of a generic template parameter <code>T</code> with a generic variadic tuple of arguments:</p>
  
  <pre><code>T&amp; init_and_return(ArgsTuple&amp; args)
  {
      m_data = std::apply(&amp;T::T, args); // here compiler complains
      return m_data;
  }
  </code></pre>
  
  <p>In my main, <code>T</code> will be a type called <code>A</code>.
  Compiler is saying "no member named <code>T</code> in <code>A</code>".</p>
  
  <p>How can I refer to the constructor of <code>T</code> in a generic way?</p>