我正在编写一个简单的应用程序来学习一些基本的 Dart 编程,但我无法弄清楚结构和包含 - 我得到了一个 Duplicate class Point
首先,我有一个名为MouseTrack的主类。它初始化列表并将有一个循环。
#import('dart:html');
#import('Eye.dart');
class MouseTrace {
List<Eye> eyes;
...
}
其次,我有一个名为Eye的类,它应该将眼睛的信息保存为一个圆圈。这很简单:
#library('app:eye');
#import('dart:html'); // without this one, I get no error but I want to have it to use CanvasRenderingContext2D
#import('Point.dart');
class Eye {
Point position;
num radius;
Eye() :
position = new Point() {
}
void draw(CanvasRenderingContext2D context) {
// draws a circle
}
}
最后点:
#library('app:point');
class Point {
num x, y;
Point(this.x, this.y);
}
我想要实现的是 3 个独立的类 - main、Eye和Point,因此我可以在main中有Eye的实例(为了简单和漂亮的模型)和Point in Eye的实例(用于存储位置)。至少我习惯这样做。
PS我知道我可以跳过类型,但我想要它,我猜这是包含问题而不是语言的问题(并且想要修复它,所以我知道如何正确地做到这一点)。PSS 我已经剪掉了一些代码,这样你就不必阅读所有内容,但如果你愿意,我会全部发布。