1

在 Dart 我有一堂课:

class A implements Iterable<MyType>{

    List<MyType> children;

    //other members for A class

}

是否可以在不使用 的情况下将所有方法noSuchMethod隐式转发给成员?Iterable<MyType>List<MyType> children;

4

1 回答 1

1

AFAIK 不可能在没有noSuchMethod或没有实施所有成员的情况下进行委派。

另一种方法是使用IterableBase并且只像这样实现Iterable.iterator

import 'dart:collection';
class A extends IterableBase<MyType> {
  List<MyType> children;
  Iterator<MyType> get iterator => children.iterator;
}

请注意,这可能不如将每个成员直接实施和委派给children.

于 2013-08-21T20:43:37.693 回答