如何为 class 自动声明运算符?
How to automatic declare operator for class?
例如,我希望operator+
加上class
中的每个字段
class Test {
final int var1;
final int var2;
final int var3;
final int var4;
Test(this.var1, this.var2, this.var3, this.var4);
Test operator +(Test other) {
return Test(
var1 + other.var1,
var2 + other.var2,
var3 + other.var3,
var4 + other.var4,
);
}
}
这非常繁琐和重复,尤其是当我有很多字段(比如说 100)时,我只想添加每个字段。
有没有其他方法可以更快地做到这一点?为什么它没有默认 operator+
?
这是不可能的,因为 dart 不是反射性语言,所以它的代码无法检查自身。
为了让您更清楚地了解,这里有一个您可以使用的示例,but in Java,您可能可以使用此语言功能实现您想要做的事情。
所以,长话短说,目前您不能在 dart 中执行此操作。
例如,我希望operator+
加上class
class Test {
final int var1;
final int var2;
final int var3;
final int var4;
Test(this.var1, this.var2, this.var3, this.var4);
Test operator +(Test other) {
return Test(
var1 + other.var1,
var2 + other.var2,
var3 + other.var3,
var4 + other.var4,
);
}
}
这非常繁琐和重复,尤其是当我有很多字段(比如说 100)时,我只想添加每个字段。
有没有其他方法可以更快地做到这一点?为什么它没有默认 operator+
?
这是不可能的,因为 dart 不是反射性语言,所以它的代码无法检查自身。
为了让您更清楚地了解,这里有一个您可以使用的示例,but in Java,您可能可以使用此语言功能实现您想要做的事情。
所以,长话短说,目前您不能在 dart 中执行此操作。