提问人:SPQR 提问时间:4/6/2023 最后编辑:ShadowRangerSPQR 更新时间:4/6/2023 访问量:126
使用 FnMut、Fn、FnOnce 作为函数的参数 [duplicate]
Using FnMut, Fn, FnOnce as arguments to a function [duplicate]
问:
我不太明白函数何时/如何使用类型的边界,,。有人可以解释一下这些将在什么场景中使用以及如何使用它们吗?Fn
FnOnce
FnMut
据我了解,我可以创建这样的函数:
struct Dog {
name: String,
}
struct Cat {
name: String,
}
fn foo(a: impl FnOnce(Dog) -> Cat) {
// call a once
}
但是我为什么要将一个函数传递给另一个函数呢?这样做是否有某种好处,例如绕过功能可见性等?
答: 暂无答案
评论