即使使用:: from,我也得到了预期的类型参数错误[重复]
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了即使使用:: from,我也得到了预期的类型参数错误[重复]相关的知识,希望对你有一定的参考价值。
使用此功能,
fn incr<A: std::ops::AddAssign>(mut foo: A) -> A
foo += A::from(1);
foo
我正在,
error[E0308]: mismatched types
--> src/lib.rs:2:20
|
1 | fn incr<A: std::ops::AddAssign>(mut foo: A) -> A
| - this type parameter
2 | foo += A::from(1);
| ^ expected type parameter `A`, found integer
|
= note: expected type parameter `A`
found type `integer`
= help: type parameters must be constrained to match other types
= note: for more information, visit https://doc.rust-lang.org/book/ch10-02-traits.html#traits-as-parameters
我该如何进行这项工作?
答案
您需要指定A
具有特征范围,要求它实现From<u8>
:
fn incr<A: std::ops::AddAssign + From<u8> > (mut foo: A) -> A
foo += A::from(1);
foo
以上是关于即使使用:: from,我也得到了预期的类型参数错误[重复]的主要内容,如果未能解决你的问题,请参考以下文章
TypeError:参数“x”的类型不正确(预期为cupy.core.core.ndarray,得到了numpy.ndarray)
泛型类型“结果”专门具有太多类型参数(得到 2,但预期为 1)
TypeScript 2.6.1错误TS2554:预期2-3个参数,但得到1