e &lt;iostream&gt;

////////////////////////////////////////////////////////////////////////////////

namespace stlplus
{

  template&lt;typename T1, typename T2, typename T3, typename S1, typename S2, typename S3&gt;
  void print_triple(std::ostream&amp; device,
                    const triple&lt;T1,T2,T3&gt;&amp; values,
                    S1 print_fn1,
                    S2 print_fn2,
                    S3 print_fn3,
                    const std::string&amp; separator = &quot;:&quot;);

} // end nam