如果您查看官方Rust文档,您会发现trait
这是为什么呢?我无法理解。是因为您可以将每个
Fn
是从FnMut
派生的,也就是说,要实现Fn
,您必须先实现FnMut
(然后再实现FnOnce
,因为FnMut
也从它派生出来)。这是为什么呢?我无法理解。是因为您可以将每个
Fn
都视为FnOnce
或FnMut
吗?
IndexMut
而不是FnMut
,但我认为我发现了一个错误?因为对于函数,有(FnOnce
), (FnOnce
,FnMut
), (FnOnce
,FnMut
,Fn
)。好的,我明白了。但是对于索引,它是:(Index
), (Index
,IndexMut
)。这是相反的,我认为这是一个错误,因为当我实现可变版本时,我也必须拥有不可变版本,否则无法工作...(我应该为此打开一个新问题还是这个评论就足够了?) - Kapichu