8 个版本
0.1.7 | 2022年12月4日 |
---|---|
0.1.6 | 2022年10月26日 |
0.1.2 | 2022年9月30日 |
2136 在 算法
每月下载量 105
10KB
252 行
dyn_array - 一个简单、易于使用的N维动态数组
DynArray 可以通过两种方式构建
- DynArray::new - 指定维度和默认值
- DynArray::new_from_data - 指定维度和包含预初始化数据的向量
所有索引都是通过使用 std::ops::Index 并传递一个数组来指定所需的元素来完成的。例如
let elem = arr[[10, 10, 10]];;
DynArray 还可以通过几种方式迭代。首先,data
和 data_mut
提供了一个连续的元素切片,而不考虑 DynArray 的维度。然后可以迭代提供的切片。还有 DynArray 的 Iterator
实现,它提供对每个元素的不可变访问,同时也提供了关联的索引。
例如
// 20x20 整数数组 let mut arr = DynArray::new([20, 20], 3);
for i in arr.data_mut() { //对元素的 mutable 访问,但没有当前索引的指示}
for (index, elem) in &arr { //对元素的 immutable 访问和当前索引 let [x, y] = index; }