0

我正在阅读 Flame 游戏引擎中的示例游戏代码。

代码:

MyGame() {
  add(Square()
    ..x = 100
    ..y = 100);
}

这是存储库中的代码(第 59-63 行):https ://github.com/flame-engine/flame/blob/master/example/lib/main.dart

我之前看过这个符号,但我从来不明白 (..x..y) 是什么意思。

这里代表什么..

4

1 回答 1

2

这在 Dart 中称为级联运算符(它实际上不是运算符,只是 Dart 语法糖的一部分),而不是像之前那样设置值.,它还返回您正在处理的对象。

因此,由于add此处需要 a ComponentSquare(这是一个组件)首先创建,然后将 x 设置为 100 并返回相同的方格,然后将 y 设置为 100 并再次返回相同的方格,然后将其发送到add.

https://dart.dev/guides/language/language-tour#cascade-notation-

于 2021-02-24T08:08:08.057 回答