如何使用Dlang在范围块中编写多条语句



我想在范围块中编写多条语句,如下所示:

long[] W = [0L];
long[] V = [0L];
array.each!(s => // "s" has following strings "3 4" 
W ~= s.split(" ")[0].to!long;
V ~= s.split(" ")[1].to!long;
);

但这会导致编译错误。有没有办法写出范围内的所有语句?

只需使用稍长的形式函数语法:

long[] W = [0L];
long[] V = [0L];
array.each!( (s) {
W ~= s.split(" ")[0].to!long;
V ~= s.split(" ")[1].to!long;
}
);

(s) { x; y; z; }适用于s => x适用的任何地方,除了s=>x,如果您需要返回值,则长格式为(s) { return x; }

最新更新