D语言:返回新创建的关联数组

时间:2013-01-12 13:56:34

标签: d associative-array factory

在工厂函数中,我有时只想返回一个新创建的空关联数组。

这样做的一种方法是:

auto make_dict()
{ int[char] dict; return dict; }

有没有办法避免声明局部变量dict

的内容
auto make_dict()
{ return int[char]; }

,或者

auto make_dict()
{ return int[char](); }

,或者

auto make_dict()
{ return new int[char]; }

这些都不起作用,原因与需要如何声明关联数组有关。有办法吗?

1 个答案:

答案 0 :(得分:9)

你可以使用

return (int[char]).init;

所以你不必申报。

所有类型的init属性表示该类型的默认初始化值(引用为null,空动态数组和空关联数组,具有当前实现)