<div dir="ltr"><div class="gmail_extra"><div><div class="gmail_signature">On 26 January 2015 at 10:15, David Chisnall <span dir="ltr"><<a href="mailto:David.Chisnall@cl.cam.ac.uk" target="_blank">David.Chisnall@cl.cam.ac.uk</a>></span> wrote:<br></div></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><span class="">On 23 Jan 2015, at 16:32, Csaba Raduly <<a href="mailto:rcsaba@gmail.com">rcsaba@gmail.com</a>> wrote:<br>
><br>
> STL (Stephan T. Lavavej) in his talk at Going Native 2013, gave this<br>
> example of an attempt to "help the compiler", which is at best<br>
> superfluous:<br>
><br>
>    auto p = std::make_pair<int, double>(42, 3.1415);<br>
><br>
> and recommended<br>
><br>
>    auto p = std::make_pair             (42, 3.1415);<br>
<br>
</span>The latter form seems less readable.  The fact that a floating point literal is a double unless suffixed with f is something that is rarely important for developers to remember, so this extra piece of information increases the cognitive burden when reading the code.<br>
<br>
The goal of the former form is not to 'help the compiler', it is to help the poor sap who has to maintain this code in a couple of years.<br>
<span class=""><font color="#888888"><br></font></span></blockquote><div><br></div><div>If you really need to think about whether it is float or double, then the unnecessary cognitive burden is somewhere else entirely.</div><div><br></div><div><br></div><div>-- J. Z.<br></div><div> </div></div></div></div>