在Dart中将图书馆分为一部分和隐私

问题描述 投票:0回答:1

我正在尝试将一个库分解为多个部分,并且无法从一个部分访问该库的私有元素。

例如,假设我有一个名为stack.dart的文件,其内容如下:

library stack;

final _stack = [];

get isEmpty => _stack.isEmpty;
get top => isEmpty ? throw "Empty stack!" : _stack.last;
get pop => isEmpty ? throw 'Empty stack!' : _stack.removeLast();
push(elt){
  _stack.add(elt);
  return elt;
}

我还有另一个具有以下内容的文件:

part of stack;

display(){
  print(_stack); // can't access _stack from here!
}

这是预期的还是我做错了?

_stack是库或文件的私有文件吗?

dart libraries privacy
1个回答
0
投票

据我所记得,Dart有点废话,“私有”访问意味着“文件访问”。因此,除非它在同一文件中,否则您很幸运。

© www.soinside.com 2019 - 2024. All rights reserved.