小编bma*_*cuk的帖子

将 None 传递给 Option<impl FnMut()> 时无法推断类型

我有这样的事情:

fn my_func(cb: Option<impl FnMut(i32) + 'static>) { ... }
Run Code Online (Sandbox Code Playgroud)

如果我尝试传入 None,例如:my_func(None),我会得到:

cannot infer type for type parameter `impl FnMut(i32) + 'static` declared on the method `my_func`
Run Code Online (Sandbox Code Playgroud)

我发现之前的一篇文章说我仍然需要通过None::<T>使用实现的东西来指定类型T,这是有道理的,但在这种情况下我该怎么做呢?我尝试定义一个与签名匹配的空函数,但这不起作用。Rust 抱怨我没有传递任何“类型”,而且传递了太多“常量”。

rust

7
推荐指数
1
解决办法
1004
查看次数

标签 统计

rust ×1