D中关联数组的常数

Nor*_*löw 2 associative-array d const map pass-by-value

据我所知,D中的地图具有价值语义.

如果是这样,为什么此示例中的第二行失败

const(uint[ubyte]) x;
uint[ubyte] y = x;
Run Code Online (Sandbox Code Playgroud)

Error: cannot implicitly convert expression (x) of type const(uint[ubyte]) to uint[ubyte]
Run Code Online (Sandbox Code Playgroud)

当key和value都有值语义时?

Vla*_*eev 5

据我所知,D中的地图具有价值语义.

D关联数组是引用类型.

在内部,它们表示为指向实现定义的数据结构的指针.(注意,如果AA是null,它不像引用类型那样,因为添加第一个成员将实例化它.)