Docs: Section on local variables
Jakob Ovrum
jakobovrum at gmail.com
Fri Apr 20 17:54:25 PDT 2012
On Friday, 20 April 2012 at 18:40:46 UTC, Jonathan M Davis wrote:
> But there's no way that the compiler is going to enforce
> that, and if it did, it would require that you initialize the
> variable in the
> above example even though the compiler already does.
Why can't the compiler enforce it? C# and Java compilers can do
it just fine.
> It seems to me that there are two approaches for the language
> to take:
>
> 1. Force all variables to be explicitly initialized, even if
> they don't really
> need to be (but the compiler can't always tell for sure). Java
> and C# take
> this approach.
Java and C# do not do that. They just enforce that local
variables have to be written to at least once before being read.
The control flow graph takes care of correctly determining
whether a variable has been initialized.
More information about the Digitalmars-d
mailing list