E0128
类型参数默认值使用了前置声明(forward declared)的标识符。
错误代码示例:
struct Foo<T = U, U = ()> {
field1: T,
field2: U,
}
// error: 泛型参数的默认值不能使用前置声明的标识符
默认类型参数只能使用在它们之前产生的参数,由于类型参数是按顺序执行的,改问题可被修复如下:
struct Foo<U = (), T = U> {
field1: T,
field2: U,
}
请同样确保不是因为名称冲突,如果是,请重命名类型参数。
本译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。