getting rid of immutable (or const)
drug
drug2004 at bk.ru
Thu Sep 5 13:27:55 UTC 2019
05.09.2019 15:46, berni пишет:
> On Thursday, 5 September 2019 at 12:15:51 UTC, drug wrote:
>> One solution could be using either pointer to `const(Point)` or class
>> here (to avoid pointer using) https://run.dlang.io/is/rfKKAJ
>
> OK. This are two solutions and although I'll probably not going to use
> any of those (due to other reasons), I still don't understand, why the
> original approach does not work. If I've got a book an put it in a box
> and later I'll get it out again, it's still the same book. So why has a
> struct changed when I put it into an AA and get it out again? It's not
> supposed to change...
Because structs are value types so when you put it into an AA you modify
old value and because it is const/immutable compiler gives an error.
But if you just want to initialize an AA by immutable members then this
can be usefull to read
https://dlang.org/spec/hash-map.html#runtime_initialization
More information about the Digitalmars-d-learn
mailing list