如何在 Dart 中创建"constant reference"吸气剂?



假设我有一个类ListContainer,它包含并管理一个必须从外部访问的列表。由于管理这个列表很复杂,我不想让ListContainer以外的任何人修改它。在c++中,我会创建一个返回const引用的函数,但在Dart中,const的工作方式完全不同。仅仅使用getter并不能阻止别人修改列表。

那么如何在不允许修改列表的情况下提供对列表值的访问呢?

我正在寻找比创建getNth函数更好的东西,因为这也需要创建length,map等方法。

我想UnmodifiableListView就是你要找的。

查看unmodiableelistview文档

你可以这样使用:

List<int> _myList = [1, 2, 3];
UnmodifiableListView<int> get myList => UnmodifiableListView(_myList);

最新更新