title: Pushing and popping the first element of a std::tuple
body: <p>I am writing a function in C++ with a variable number of arguments (and different types) in this way</p>
  
  <pre><code>template&lt;typename ...Ts&gt;
  void myFunction(Ts ...args)
  {
      //create std::tuple to access and manipulate single elements of the pack
      auto myTuple = std::make_tuple(args...);    
  
      //do stuff
  
      return;
  }
  </code></pre>
  
  <p>What i would like to do, but I don't know how, is to push and pop elements from the tuple, in particular the first element... something like</p>
  
  <pre><code>//remove the first element of the tuple thereby decreasing its size by one
  myTuple.pop_front()
  
  //add addThis as the first element of the tuple thereby increasing its size by one
  myTuple.push_front(addThis)
  </code></pre>
  
  <p>Is this possible?</p>