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

D语言:返回新创建的关联数组,d,associative-array,factory,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](); } 或者 或者 由于与关联数组需要如何声明有关的原因,这些都不起作用。有办法吗?你可以用 return (int[char]).

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

一种方法是:

auto make_dict()
{ int[char] dict; return dict; }
有没有办法避免声明局部变量dict?类似于

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

或者

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

你可以用

return (int[char]).init;
所以你不必申报

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

return (int[char]).init;