<div dir="auto"><div dir="auto"></div>The format library has just been confirmed for C++20. It handles booleans as you require.<div dir="auto"><br></div><div dir="auto">However, on a semantic note the strings &quot;true&quot; and &quot;false&quot; are rarely applicative to the actual meaning the bool represents, and as such the easy approach of adding it directly into a string will rarely be useful.</div><div dir="auto"><br></div><div dir="auto"><br><div class="gmail_quote" dir="auto"><div dir="ltr" class="gmail_attr">On Sat, 20 Jul 2019, 21:39 Jonny Grant via Std-Proposals, &lt;<a href="mailto:std-proposals@lists.isocpp.org" target="_blank" rel="noreferrer">std-proposals@lists.isocpp.org</a>&gt; wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
  
    
  
  <div text="#000000" bgcolor="#FFFFFF">
    <font face="Helvetica, Arial, sans-serif">Hi Garrett<br>
      <br>
      Many thanks for your reply.<br>
      <br>
      Yes, I see std::boolalpha sets an I/O flag.. but seems a bit of a
      long way to get it into a string, I&#39;d need to use in conjunction
      with std::istringstream to get a string...<br>
      <br>
      I wanted to do something like this example:<br>
      <br>
      <b>Idea</b><br>
      std::string fmt(const std::string header, bool b)<br>
      {<br>
          return header + &quot; &quot; + std::to_string(b) + &quot; set&quot;;<br>
      }<br>
      <br>
      <b>How I would do now</b><br>
      As his doesn&#39;t work, I&#39;d have it at present as:<br>
      std::string fmt(const std::string header, bool b)<br>
      {<br>
          return header + &quot; &quot; + b?&quot;true&quot;:&quot;false&quot; + &quot; set&quot;;<br>
      }<br>
      <br>
    </font><br>
    Regards, Jonny<br>
    <br>
    <br>
    <div class="m_-4435884093632897073m_7793927566352639942moz-cite-prefix">On 20/07/2019 21:21, Garrett May via
      Std-Proposals wrote:<br>
    </div>
    <blockquote type="cite">
      
      <div dir="auto">
        <div>std::boolalpha is already available:</div>
        <div dir="auto"><br>
        </div>
        <div dir="auto">int main(){</div>
        <div dir="auto">    bool const a = true;</div>
        <div dir="auto">    std::cout &lt;&lt; std::boolalpha &lt;&lt; a
          &lt;&lt; std::endl;</div>
        <div dir="auto">}</div>
        <div dir="auto"><br>
        </div>
        <div dir="auto">My gut instinct here is that one is supposed to
          control how one wants data to be printed out, in the same way
          as how float/double precision is done.</div>
        <div dir="auto"><br>
          <br>
          <div class="gmail_quote" dir="auto">
            <div dir="ltr" class="gmail_attr">On Sat, 20 Jul 2019, 21:16
              Jonny Grant via Std-Proposals, &lt;<a href="mailto:std-proposals@lists.isocpp.org" rel="noreferrer noreferrer" target="_blank">std-proposals@lists.isocpp.org</a>&gt;
              wrote:<br>
            </div>
            <blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hello<br>
              <br>
              Could std::string to_string(bool value); be added? 
              Currently it outputs <br>
              as a number due to the implicit conversion to int?<br>
              Feel it would have been more appropriate as &quot;true&quot; or
              &quot;false&quot;.<br>
              <br>
              <a href="http://www.cplusplus.com/reference/string/to_string/" rel="noreferrer noreferrer noreferrer noreferrer" target="_blank">http://www.cplusplus.com/reference/string/to_string/</a><br>
              <br>
              $ g++-8 -Wall -o to_string to_string.cpp<br>
              $ ./to_string<br>
              1<br>
              <br>
              <br>
              <br>
              // g++-8 -Wall -o to_string to_string.cpp<br>
              #include &lt;string&gt;<br>
              #include &lt;iostream&gt;<br>
              int main()<br>
              {<br>
                   const bool a = true;<br>
                   const std::string b(std::to_string(a));<br>
                   std::cout &lt;&lt; b &lt;&lt; std::endl;<br>
              }<br>
              <br>
              Cheers, Jonny<br>
              <br>
              <br>
              <br>
              .<br>
              <br>
              <br>
              -- <br>
              Std-Proposals mailing list<br>
              <a href="mailto:Std-Proposals@lists.isocpp.org" rel="noreferrer noreferrer noreferrer" target="_blank">Std-Proposals@lists.isocpp.org</a><br>
              <a href="http://lists.isocpp.org/mailman/listinfo.cgi/std-proposals" rel="noreferrer noreferrer noreferrer noreferrer" target="_blank">http://lists.isocpp.org/mailman/listinfo.cgi/std-proposals</a><br>
            </blockquote>
          </div>
        </div>
      </div>
      <br>
      <fieldset class="m_-4435884093632897073m_7793927566352639942mimeAttachmentHeader"></fieldset>
    </blockquote>
    <br>
  </div>

-- <br>
Std-Proposals mailing list<br>
<a href="mailto:Std-Proposals@lists.isocpp.org" rel="noreferrer noreferrer" target="_blank">Std-Proposals@lists.isocpp.org</a><br>
<a href="http://lists.isocpp.org/mailman/listinfo.cgi/std-proposals" rel="noreferrer noreferrer noreferrer" target="_blank">http://lists.isocpp.org/mailman/listinfo.cgi/std-proposals</a><br>
</blockquote></div></div></div>

