以下是:

4.pow(2)

我得到:

error: no method named `pow` found for type `_` in the current scope

我必须更明确一些,例如:

4_i32.pow(2)

对于浮动,我得到了一个类似的问题(和解决方案),其中:

4.0.powf(2.0)

还必须明确:

4.0_f64.powf(2.0)

推荐答案

我认为这是因为回退只有在考虑了文字上的所有约束后才会发生(它发现有aren't个约束).

在这种情况下,要知道4是什么类型,就必须知道pow是什么类型.但对于每种积分类型,pow是单独定义的.所以要知道你说的pow是什么,它必须知道4是什么类型.但要知道4人是什么类型...等等

Rust相关问答推荐

有没有方法处理rust中嵌套的ok_or()?

为什么我们不能通过指针算法将Rust原始指针指向任意地址?'

Rust中的相互递归特性与默认实现

创建包含缺失值的框架

Arrow RecordBatch as Polars DataFrame

当对VEC;U8>;使用serde_json时,Base64编码是保护空间的好方法吗?

在 Rust 中用问号传播错误时对类型转换的困惑?

找不到 .has_func 或 .get_func 的 def

Rust 重写函数参数

为什么是&mut发送?线程如何在安全的 Rust 中捕获 &mut?

pyO3 和 Panics

不安全块不返回预期值

rust tokio::spawn 在 mutexguard 之后等待

Rust 异步和 AsRef 未被发送

为什么在 rust 中删除 vec 之前应该删除元素

从 Cranelift 发出 ASM

以下打印数组每个元素的 Rust 代码有什么问题?

为什么-x试图解析为文字并在声明性宏中失败?

如何在宏中的多个参数上编写嵌套循环?

在 macro_rules 中转义 $ 美元符号