在 D 语言中,多维关联数组的初始化需要使用 auto 关键字。直接使用类型声明会导致编译错误,因为编译器无法推断出数组的具体类型。

错误示例:

string[string][string] recursiveAssocArray1 = [
    "fruits": ["a": "apple", "b": "banana"]
];

正确示例:

auto recursiveAssocArray1 = [
    "fruits": ["a": "apple", "b": "banana"]
];

分析:

在 D 语言中,auto 关键字可以用来声明一个变量,并让编译器自动推断出它的类型。在初始化多维关联数组时,由于数组的类型包含多个嵌套的关联数组,编译器无法通过类型声明直接推断出数组的类型,因此需要使用 auto 关键字让编译器自动推断。

其他示例:

string[string] assocArray1 = ["a": "apple", "b": "banana"];
string[string] assocArray2 = ["b": "orange", "c": "grapes"];
auto assocMergeResult = array_merge(assocArray1, assocArray2);
writeln("Associative array_merge result: ", assocMergeResult);

通过使用 auto 关键字,可以正确地初始化多维关联数组,并避免编译错误。

D语言多维关联数组初始化:使用 auto 关键字

原文地址: https://www.cveoy.top/t/topic/oiYY 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录