4
在我的高分子飞镖1.0.0的探索,我已经找到了事件,并观察方法,我不得不使用这种模式作为函数/类方法的参数,双下划线在单个下划线之后的用途是什么?
@reflectable
void someEvent([_, __]) {
...
}
或观察员方法
@Observe('someField')
void someFieldChanged([_, __]) {
...
}
我了解方括号是什么,可选参数,我也明白,如果你不关心传递的参数,你可以用下划线表示这个参数。令我感到意外的是,我看到的例子是使用双下划线__作为方括号之间的第二个符号。当我试图再次使用一个下划线时,我得到一个重复的形式参数错误。有没有理由为什么你不关心的第二个参数必须与第一个参数不同?通过这个逻辑,如果我包含第三个,这是否意味着它必须是一个三重下划线___?
谢谢。
所以这下划线来表示你不关心的参数,只是惯例,以及你说,下划线可以用作变量标识符? –
是的。飞镖中的标识符必须以'$','_'或一个字母开头,并且继续使用零个或多个数字,字母,''''或'_'。这意味着'_'只是一个变量,就像'a'一样。它有一个私有名称,但由于它是一个局部变量,所以并不代表任何意义。 – lrn
谢谢。你有时会忽视这些明显的事情。非常感激。 –