Block statements and memory management
Paul Backus
snarwin at gmail.com
Sat Mar 16 03:57:41 UTC 2019
On Saturday, 16 March 2019 at 03:47:43 UTC, Murilo wrote:
> Does anyone know if when I create a variable inside a scope as
> in
> {int a = 10;}
> it disappears complete from the memory when the scope finishes?
> Or does it remain in some part of the memory? I am thinking of
> using scopes to make optimized programs that consume less
> memory.
It depends on how the compiler translates and optimizes the code.
An integer variable like `a` in your example might never exist in
memory at all, if the compiler can allocate a register for it
until it goes out of scope. The easiest way to find out is to
look at a disassembly of the compiled code.
More information about the Digitalmars-d-learn
mailing list