gpt4 book ai didi

syntax - 无法从 SPRS 库中初始化 TriMat 矩阵

转载 作者:行者123 更新时间:2023-11-29 08:12:14 25 4
gpt4 key购买 nike

我正在尝试使用稀疏矩阵库 SPRS,但在初始化矩阵时遇到了问题。为什么这不起作用?

extern crate sprs;
use sprs::TriMat;

fn main() {
let mut matrix = TriMat::new((5, 5));
}

错误是

error[E0282]: type annotations needed
--> src/main.rs:5:22
|
5 | let mut matrix = TriMat::new((5, 5));
| ---------- ^^^^^^^^^^^ cannot infer type for `N`
| |
| consider giving `matrix` a type

最佳答案

你只需要告诉它矩阵元素的类型。例如,如果它是 i32 的矩阵,那么:

let mut matrix: TriMat<i32> = TriMat::new((5, 5));

这不能从 new 构造函数中推断出来,因为它只接受矩阵的 shape 参数,不包括元素类型的元素.

如果你真的开始在矩阵中存储数据,那么类型注释基本上是不必要的,因为它会从数据中推断出来:

let mut matrix = TriMat::new((5, 5));
matrix.add_triplet(0, 0, 42); // 42 literal is `i32` by default.

关于syntax - 无法从 SPRS 库中初始化 TriMat 矩阵,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51548363/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com