manifest constants vs C++ keyword "const"
<p>Reading the book of Meyers (item 2 "Prefer const to #define) I'd like to understand some sentences that I list below:</p>

<ol>
<li><p>With reference to the comparison between <code>#define ASPECT_RATIO 1.653</code> and <code>const aspect_ratio = 1.653</code> Meyers asks that "... in the case of floating point constant (such as in this example) use of the constant may yield smaller code than using <code>#define</code>." 
The questions are: 
With smaller code Meyers means the a smaller space on disk of executable file?
Why it is smaller? I thought that this may be valid on system with 32 bit because in this case an <code>int</code> (or pointer) needs 4 bytes and a double 8 bytes. Because <code>ASPECT_RATIO</code> may not get entered into symbol table the name is replaced with the value, while in other cases may be used a <code>const</code> pointer to a unique double value. In this case this concept would no longer be valid on machines with 64 bit (because pointer and double are the same number of bytes). I do not know if I explained well what I mean, and especially if this idea is correct?</p></li>
<li><p>Then Meyers asks that " ...though good compilers won't set aside storage for <code>const</code> objects of integral types (unless you create a pointer or reference to the object) sloppy compilers may, and you may not be willing to set aside memory for such objects..."
In this context the memory is the RAM occupied by the process in execution? If it is correct to verify this I can use task manager (in Win) or top (in Linux)?</p></li>
</ol>
