这有效:
int[] a = [ 1, 2, 3, 4 ];
fill(a, 5);
Run Code Online (Sandbox Code Playgroud)
但这不是:
int[4] a = [ 1, 2, 3, 4 ];
fill(a, 5);
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
错误:模板std.algorithm.fill(Range,Value)if(isForwardRange!(Range)&&是(typeof(range.front = filler)))与任何函数模板声明都不匹配
相反,我必须这样做才能使它与静态数组一起使用:
int[4] a = [ 1, 2, 3, 4 ];
fill(a[], 5);
Run Code Online (Sandbox Code Playgroud)
请问任何人解释这种行为吗?
d ×1