title: static_cast vs boost::lexical_cast
body: <p>I am trying to concatenate an integer to a known string, and I have found that there are several ways to do it, two of those being:</p>
  
  <pre><code>int num=13;
  string str = "Text" + static_cast&lt;ostringstream*&gt;( &amp;(ostringstream() &lt;&lt; num) )-&gt;str();
  </code></pre>
  
  <p>or I could also use <code>boost</code> libraries' <code>lexical_cast</code>:</p>
  
  <pre><code>int num=13;
  string str= "Text" + boost::lexical_cast&lt;std::string&gt;(num);
  </code></pre>
  
  <p>Is the use of <code>boost::lexical_cast</code> more efficient in any way, since I already know the conversion type (<code>int</code> to <code>string</code>)? Or is <code>static_cast</code> just as effective, without having to rely on external libraries?</p>