我正在使用MixHash将两个Hashes与Bag add(+)运算符组合在一起.这似乎有效 - 但是...我有点惊讶的是,工会的结果需要重新强制回到MixHash.
我的猜测是Bag add(+)infix操作符首先将所有内容强制转换为Bag并将结果作为Bag返回.这对我来说可能有风险,因为我的一些重量是负的(因此首先是混合).这会正确地增加负重吗?
或者,是否有Mix add(+)运算符?
my MixHash $dim-mix;
for ... {
my $add-mix = $!dims.MixHash;
$dim-mix = $dim-mix ?? ( $dim-mix (+) $add-mix ).MixHash !! $add-mix;
}
dd $dim-mix;
Run Code Online (Sandbox Code Playgroud)
现在我看一下这个释义代码,或许有一些三元的表述?!既然已经在左边了,可以避免在测试中拼出$ dim-mix?
非常感谢任何建议!
perl6 ×1