4

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

一种方法是:

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]; }

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

4

1 回答 1

9

您可以使用

return (int[char]).init;

所以你不必声明它。

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

于 2013-01-12T14:11:38.560 回答