writeln wipes contents of variables ?
W.J. via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Thu Jan 21 08:45:30 PST 2016
On Thursday, 21 January 2016 at 14:36:36 UTC, Rikki Cattermole
wrote:
> On 22/01/16 3:07 AM, W.J. wrote:
>> On Thursday, 21 January 2016 at 13:15:46 UTC, Rikki Cattermole
>> wrote:
>>> [...]
>>
>>
>> Thanks for your reply.
>>
>> So writeln consumes the values in an InputRange. That leads me
>> to
>> believe that if I feed an InputRange to foreach, it will
>> consume the
>> values, too.
>> Did I get that right ?
>
> Correct.
>
>> If that's the case, why I can iterate and write the values
>> just fine
>> using nested foreach loops *and* writeln them afterwards ?
>> I would expect the foreach loops leaves "step3" in the same
>> state as
>> writeln does.
>>
>> So I'm still a little confused as to how foreach goes about
>> it. I
>> thought foreach would be iterating an InputRange the same way
>> writeln does.
>>
>> By attaching ".array" to the result of I was under the
>> impression the
>> result was actually converted to an array.
>> That seems not to be the case. What I probably got was
>> something like an
>> array of arrays of groups - which are apparently InputRanges ?
>>
>> So, yes, writeln... InputRange... makes perfect sense except
>> for the
>> foreach case.
>>
>> Thanks again for the help :)
After playing around some more and apart from requiring much more
practice I think this topic can be marked as 'solved'. However, I
can't seem to find the edit button for my initial post.
Anyways, thanks for your contributions :) Very much appreciated!
More information about the Digitalmars-d-learn
mailing list