title: is this boost::tuple code convertible to pure std:: standard library code?
body: <p><em>Is the following boost code convertible to pure c++11 standard libraries?</em></p>
  
  <p>I see <code>std::tuple</code> and <code>std::for_each</code> but I can't seem to get them to play with each other.</p>
  
  <p>I am currently using gcc 4.7.2.</p>
  
  <p><strong>CODE</strong></p>
  
  <pre><code>#include &lt;string&gt;
  #include &lt;algorithm&gt;
  #include &lt;iostream&gt;
  
  #include &lt;boost/fusion/algorithm/iteration/for_each.hpp&gt;
  #include &lt;boost/fusion/include/boost_tuple.hpp&gt;
  
  struct DoOutput
  {
      template&lt;typename T&gt;
      void operator()(T const&amp; t) const
      {
              std::cerr &lt;&lt; t &lt;&lt; std::endl;
      }
  
      void operator()(std::string const&amp; t) const
      {
              std::cerr &lt;&lt; "'" &lt;&lt; t &lt;&lt; "'" &lt;&lt; std::endl;
      }
  };
  
  int
  main( int argc, char* argv[] )
  {
      boost::tuple&lt; std::string, int &gt; t = boost::make_tuple( "foo", 42 );
      boost::fusion::for_each( t, DoOutput() );
  
      return 0;
  }
  </code></pre>