【发布时间】:2021-04-09 19:36:24
【问题描述】:
为什么我不能初始化这个类?
class ChangeThis<T1, T2> {
final T1 item1;
final T2 item2;
ChangeThis({
this.item1,
this.item2,
});
}
int main() {
ChangeThis<bool, int> changeThis = new ChangeThis<bool, int>(true, 0);
}
我遵循了这个答案:https://stackoverflow.com/a/63060545,但我得到了:
Too many positional arguments: 0 allowed, but 2 found.
ChangeThis<bool, int> changeThis = new ChangeThis<bool, int>(true, 0);
【问题讨论】:
-
参数列表中的花括号 (
{}) 表示命名参数。如果您需要可选的 位置 参数,请使用方括号 ([])。或者,如果您不想要可选参数,请不要在参数周围放置任何额外的括号或大括号。见dart.dev/guides/language/language-tour#parameters