rust - 如何填充具有预定义容量的向量?
问题描述
我试图在初始化向量后填充它,with_capacity()
因为元素的数量在创建之前是已知的,并且它似乎更有效。
以下代码根本不填充随机值:println!("{}", v.len());
输出为零。
use rand::Rng;
fn main() {
const NUMBER_OF_RANDOM_NUMBERS: usize = 10;
let mut v = Vec::with_capacity(NUMBER_OF_RANDOM_NUMBERS);
for i in &mut v {
*i += rand::thread_rng().gen_range(1, 2^32);
}
println!("{}", v.len());
}
我的想法是在let mut v = Vec::with_capacity(NUMBER_OF_RANDOM_NUMBERS)
一个全新的向量被初始化为 10 个零之后,然后使用rand::thread_rng().gen_range(1, 2^32)
插入,或者我应该说,为每个零添加一个随机数。
我在这里错过了什么吗?
解决方案
推荐阅读
- android - 无法切换到任何主题,如深色、浅色、系统等
- amazon-web-services - GitlabRunner - tcp://localhost:2375。docker 守护进程是否正在运行?
- mysql - Laravel 8 选择查询内的选择查询
- docker - Docker,复制失败:构建上下文之外的禁止路径
- javascript - 使用 JSON 有效负载数据将数据显示到下拉列表中
- c++ - 如何在 std::function 中存储友元函数
- r - 如何在r中将许多命令变成一个管道命令?
- android - Android 12 启动画面条件启动画面
- java - 避免线程中的忙等待警告
- image-segmentation - 如何在可可数据集上使用detectron2 训练deeplabv3+?