mutable keyword
Era Scarecrow via Digitalmars-d-learn
digitalmars-d-learn at puremagic.com
Thu May 19 16:18:11 PDT 2016
On Thursday, 19 May 2016 at 20:44:54 UTC, ciechowoj wrote:
> Is there D equivalent of C++'s mutable keyword? Like the one
> that allows to modify a field of struct from constant method.
> Or some alternative solution?
A little personal experience. I wrote a tool that had certain
flags that did things turned on by default, and turning them off
using other flags. This seemed the best choice at the time, but
upon later reflection it's hard to remember details you'd not
think about unless you wanted them active. Think about a simple
action like 'get home', which you also have to 'turn sink off,
don't change bedding, don't shave, don't walk dog' because
otherwise you have to do all those when all you planned when
getting home was taking a shower and going to bed. Remembering to
add all the flags/changes/options for the utility quickly was
becoming a pain, to which I reverted my options to only be on
when called/intended them rather than thinking them on by default
was the best option.
As for mutable. It's mutable unless you specify otherwise, and
the whole object as a whole can be immutable/const; Don't
complicate the rules so "it's const (except when it's not)"
logic, either make it intentionally const/immutable or don't.
More information about the Digitalmars-d-learn
mailing list