Rust 为什么来自<;T>;对于U意味着进入<;U>;对于生锈的T?
这就是我如何将Rust 为什么来自<;T>;对于U意味着进入<;U>;对于生锈的T?,rust,Rust,这就是我如何将实现为特征,以将i32转换为一组平方数: impl Into<SquaredNumber> for i32 { fn into(number: i32) -> SquaredNumber { SquaredNumber(i32::pow(2, number)) } } impl-in for i32{ fn到(数字:i32)->平方数{ 平方数(i32::pow(2,数字)) } } 根据: From for U意味着to fo
实现为特征,以将i32
转换为一组平方数:
impl Into<SquaredNumber> for i32 {
fn into(number: i32) -> SquaredNumber {
SquaredNumber(i32::pow(2, number))
}
}
impl-in for i32{
fn到(数字:i32)->平方数{
平方数(i32::pow(2,数字))
}
}
根据:
From for U意味着to for T
怎么可能仅仅因为我将实现为,就实现了From
?给定一个平方数(16)
,它是否会变成4:i32
,并不明显,它可能是-4:i32
这是如何工作的?如果您弄错了,您应该从自动执行开始执行,而不是相反。多亏了禁用的实现impl From for SquaredNumber
将意味着impl Into for i32
,因此没有生成SquaredNumber
->i32
。
From<T> for U implies Into<U> for T