title: Getting the type of parameters in a parameter pack
body: <p>So let's say we have the following code:</p>
  
  <pre><code>#include &lt;stack&gt;
  
  template&lt;class... Args&gt;
  auto make_stack(Args&amp;&amp;... args)
  {
      std::stack&lt;INSERT_TYPE_HERE&gt; s;
      return s;
  }
  
  int main()
  {
      auto s = make_stack(1, 2.2, 3); //would be std::stack&lt;double&gt;
      auto s2 = make_stack(1l, 2, 3); //would be std::stack&lt;long&gt;
  }
  </code></pre>
  
  <p>How would I find the common type of the arguments in the parameter pack?</p>