|
|
1
29
据我所知,你希望迭代器返回一个引用向量到它自身,对吗?不幸的是,在铁锈中是不可能的。
这是修剪过的
请注意
之间
但这不是一个有效的
这样的迭代器(可以将引用返回自身的迭代器)称为 流迭代器 . 你可以找到更多 here , here 和 here ,如果你愿意的话。 但是,您可以从迭代器返回对其他结构的引用—这就是大多数集合迭代器的工作方式。可能是这样的:
|
|
|
2
7
@VladimirMatveev's answer 它的解释是正确的 您的代码无法编译。简而言之,它说明迭代器不能从自身产生借用的值。
然而,它可以从其他东西那里获得借来的价值。这就是我们所要达到的目的
这是一个能达到你想要的设计。迭代器就像
与你最初的问题无关。如果这只是我,我会确保所有借来的向量都能一次得到。这样做的目的是消除
(
编辑
|
|
3
3
如其他答案所述,这被称为
流迭代器
它需要不同于Rust的保证
以下是实现特征的一个示例:
generic associated types (GATs) 从RFC 1598开始执行。 |
|
|
RedCrafter LP · 用隐式生命周期方法实现外来特质 1 年前 |
|
|
Taz · 覆盖第三方库中的Drop特性 1 年前 |
|
|
rockerbacon · Rust惯用的方法是什么? 1 年前 |
|
Makogan · 如何调用存储在Box中的dyn函数? 1 年前 |
|
|
apt1002 · 为什么Deref式的特质不构成? 2 年前 |
|
|
mozboz · 是否将trait指定为枚举变量值? 2 年前 |
|
|
tcerqueira · 如何引用不使用生存期参数的结构的生存期 2 年前 |