for val in vals这句是可以单步跟进去到std内部的源代码的,调用的Vec<T>::into_iter(),
for val in vals也就是for val in vals.into_iter(),
里面会调用std::mem::forget(self)转移ownership。
是整体转移,不是逐个减少vals中的元素个数。
【 在 txgx 的大作中提到: 】
: 综合15楼的分析,有一点可以肯定
: for v in vals 把vector 清空了!
: 如果println可以工作的话,那么输出应该是4,3,2,1,0
: ...................
--
FROM 123.115.133.*