我可以在堆中创建一个消耗迭代器:
vec![1, 10, 100].into_iter()
Run Code Online (Sandbox Code Playgroud)
我也可以在堆栈上创建一个借用元素的迭代器:
[1, 10, 100].iter()
Run Code Online (Sandbox Code Playgroud)
但如果我写这个:
[1, 10, 100].into_iter()
Run Code Online (Sandbox Code Playgroud)
这不是消耗迭代器,因为[T; _]::into_iter不存在:IntoIterator仅针对借用版本(aka slice)实现.是否有一种简单的方法(最好是在stdlib中)在堆栈上创建消耗迭代器?
我知道[1, 10, 100].iter().cloned()可以做到,但这要求物品可以克隆.
| 归档时间: |
|
| 查看次数: |
103 次 |
| 最近记录: |