foreach

Ary Borenszweig via Digitalmars-d digitalmars-d at puremagic.com
Thu Jun 12 10:36:20 PDT 2014


On 6/12/14, 2:11 PM, Steven Schveighoffer wrote:
> On Thu, 12 Jun 2014 11:00:11 -0400, Manu via Digitalmars-d
> <digitalmars-d at puremagic.com> wrote:
>
>> I often find myself wanting to write this:
>>   foreach(; 0..n) {}
>> In the case that I just want to do something n times and I don't
>> actually care about the loop counter, but this doesn't compile.
>
> The compiler has to assign a variable to this somehow so it can
> increment and test. Naming it isn't the worst thing in the world. As
> others have said, pick an uncommon name.
>
>>
>> You can do this:
>>   for(;;) {}
>>
>> If 'for' lets you omit any of the loop terms, surely it makes sense
>> that foreach would allow you to omit the first term as well?
>> I see no need to declare a superfluous loop counter when it is unused.
>
> But that doesn't increment a variable and test it. If you wanted to loop
> for N times, you need a variable.

The compiler needs a variable. The programmer doesn't.



More information about the Digitalmars-d mailing list