title: aliasing a std template function
body: <p>I need to alias <code>std::get</code> function in order to improve readability in my code.</p>
  
  <p>Unfortunately I got a compile-time error <code>get&lt;0&gt; in namespace ‘std’ does not name a type</code>. <code>using</code> is equivalent to <code>typedef</code> so it needs types to work with.
  I am using a <code>std::tuple</code> to represent some data type:</p>
  
  <pre><code>using myFoo = std::tuple&lt;int,int,double,string&gt;;
  using getNumber = std::get&lt;0&gt;;
  </code></pre>
  
  <p>I look at some previous questions but the solution proposed is to wrap and use <code>std::forward</code>. I don't want to write such code for each member.</p>
  
  <ul>
  <li><a href="https://stackoverflow.com/questions/24330300/aliasing-a-variadic-template-function">Q1 from SO</a></li>
  <li><a href="https://stackoverflow.com/questions/9864125/c11-how-to-alias-a-function">Q2 from SO</a></li>
  </ul>
  
  <p>Is there a way to get around this using only <i>using keyword</i>?</p>