On Monday, 17 June 2019 at 19:53:52 UTC, Thomas wrote:
Do I understand it right that the variable x will be created 10000 times and destroyed at the end of the scope in each loop ? Or will it be 10000 overwritten by creation ?
No, the compiler will generate code to reuse the same thing each loop.
In my opinion this version should perform a little better:
That's actually slightly *less* efficient (in some situations) because it doesn't allow the compiler to reuse the memory for `x` after the loop has exited.
But in both cases, the compiler will just set aside a little bit of local space (or just a cpu scratch register) and use it repeatedly. It is totally "free".