腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
1
回答
如何
创建
`
FnOnce
`
函数
、
、
我正在尝试
创建
一个仅为
FnOnce
的
函数
。以下代码片段不起作用: // Attempt 1let f:
FnOnce
() -> () =("Hello"); fn g<T:
FnOnce
() -> ()>(c: T) -> (
FnOnce
浏览 12
提问于2019-06-28
得票数 2
1
回答
包含闭包参数的方法期望错误的类型?
、
、
我有一个结构,Parser,它包含一个transformer (一个用于修改其ParserState的
函数
)和所述的ParserState。我遇到了这个错误: | ^^^ expected `()`, found struct `parsers::ParserState` 我也不
浏览 3
提问于2020-04-27
得票数 0
回答已采纳
1
回答
不能为<‘r>
FnOnce
(&'r [u8])移动dyn类型的值:不能静态确定<r>
FnOnce
(&'r [u8])的dyn大小
我正在尝试在线程之间共享一个
函数
,这个
函数
可以用它上的另一个
函数
调用: let on_virtual_tun_write = std::sync::Arc::new(|f: &dyn
FnOnce
(&mut [u8]), size: usize|-> std::result::Result<(),()>{ let mut buffer = vec!正如您所看到的,我不打算复制
函数
,只要有人调用闭包并放弃它,我就会使用它。然而
浏览 3
提问于2021-03-24
得票数 5
回答已采纳
1
回答
是否有一种方法来表达“相同”的泛型,具有不同的生存期限制?
、
、
、
考虑以下(不完全)
函数
签名:unsafe fn<'a, T, S>
浏览 0
提问于2018-09-20
得票数 2
1
回答
特征界限不满足
这是我尝试调用的
函数
:pub fn spawn<F>(f: F) -> Handle{} Task(Bo
浏览 2
提问于2016-06-13
得票数 9
回答已采纳
1
回答
临时值的正确
函数
类型
、
、
函数
内部调用的“回调”
函数
的正确
函数
类型是什么? f() value}or_else(0, || { 3 })cannot move a value of type dyn
FnOnce
() -> u32: the size of dyn
FnOnce
()
浏览 3
提问于2022-09-21
得票数 0
回答已采纳
1
回答
无法在‘in’闭包中移出捕获的外部变量
、
、
我试图弄清楚
如何
通过通道发送
函数
,以及
如何
避免额外的克隆,以便在另一端执行
函数
。task();} fn foo(list: SafeList) { } 是否有更好的方法来避免这个错误和/或我应该通过通道发送
函数
的另一种方式
浏览 2
提问于2015-11-11
得票数 31
回答已采纳
1
回答
铁锈:为什么关闭变量的绑定改变了类型?
、
<(&u64,)>`但是,当我不首先将闭包绑定到变量并直接在Box的构造
函数
中
创建
它时,它会编译:error: implementation of `
FnOnce
` is not general enough | 3 |
浏览 3
提问于2021-04-10
得票数 9
回答已采纳
1
回答
从‘from’呼叫‘from’
、
、
、
、
我正在使用两个不同的库(特别是和),并希望从一个库中从另一个库调用
FnOnce
函数
,并从另一个库调用Fn
函数
。由于公开的JS
函数
可以在技术上随时被捕获和调用,因此Rust无法保证
函数
只被调用一次,因此它必须假设
函数
将被多次调用。
如何
使两者协同工作,以便在一个Future回调中解析一个Fn? 我知道多次调用
FnOnce
是不行的,我也可以使用unsafe代码,或者在运行时强制该
函数
只调用一次。在调用
FnOnce
之前,可以
浏览 14
提问于2022-06-05
得票数 1
回答已采纳
1
回答
编写调用另一个异步
函数
的异步
函数
我正在尝试
创建
一个异步
函数
,它接受一个
函数
指针作为参数。它做一些事情,调用
函数
,等待结果,然后做更多的事情: use std::future::Future; whereFut: Future<Output = ()>,{ println!i32,)>>:
浏览 22
提问于2021-08-22
得票数 5
2
回答
使用“`move`”关键字的闭包
如何
创建
FnMut闭包?
.| {...}会在闭包中移动变量,而闭包只实现
FnOnce
,因为您只能移动变量一次。:where令我惊讶的是,在使用FnMut关键字时
创建
了一个或者它实际上是
如何
工作的?
浏览 0
提问于2018-05-02
得票数 5
回答已采纳
1
回答
如何
编写接受闭包集合的
函数
?
我试图编写一个
函数
,它接受一个类型为Fn() -> ()的闭包集合,即每个闭包不需要args,什么也不返回(我希望它们实际上是
FnOnce
,以便将所有的环境都移动到闭包对象中)。我在中
创建
了一个要点,以显示我正在试图做的事情。以下是简化的代码:where{}error[E0271]: t
浏览 1
提问于2017-07-30
得票数 2
回答已采纳
1
回答
对关联类型使用高阶生存期界限
、
我想
创建
一个
函数
-让我们称它为foo。我想让这个
函数
接受引用参数,也就是predicate谓词,接受一个类型为T的参数t -
FnOnce
。Predicate返回捕获t生存期的未来。虽然我可以使用更高阶的生命周期界限和BoxFuture来实现这一点where for<'a> E:
FnOnce
(&'a看起来for<'a>语法只匹配最近的参数,所以下面的
浏览 7
提问于2020-03-01
得票数 2
2
回答
为什么Fn来源于FnMut (这是从
FnOnce
派生的)?
、
如果您查看,您会发现特征Fn是从FnMut派生出来的,或者,要实现Fn,您必须实现FnMut (以及之后的
FnOnce
,因为FnMut也是从它派生的)。 为什么是这样?我就是无法理解。是因为您可以将每个Fn称为
FnOnce
或FnMut吗?
浏览 5
提问于2015-07-02
得票数 8
回答已采纳
1
回答
你能用铁锈强迫一些(方框: Option<Box<
FnOnce
<...>>> )吗?
[allow(dead_code, unused_variables)] bar.call_once((10,)); let bar:Box<
FnOnce
<(int,), ()> + Send> = box |:x:int| { println![allow(dead_code, unused_variables)] fn test2(mut bar:Option<Box&
浏览 6
提问于2014-11-09
得票数 1
回答已采纳
1
回答
复制‘`std::线程::spawn`’导致堆栈溢出
、
描述 mem::transmute::<Box<dyn
FnOnce
() + 'a>, Box<dyn
FnOnce
() + 'static>>(Box我在最小的#[no_std]机箱中尝试了这一点,在闭包中调用了user32.MessageBox,它没有出现
浏览 6
提问于2020-01-16
得票数 0
回答已采纳
2
回答
有什么办法可以进行装箱和附带关闭吗?
、
我需要一个按值捕获的闭包,最多只需要一次调用,但是我不能让
函数
在每个传递的闭包上使用闭包单形,因为闭包和
函数
是相互递归的,并且monomorphisation阶段失败。我试过这样的方法: closure(3) false} error[E0161]: cannot move a va
浏览 4
提问于2015-02-21
得票数 1
回答已采纳
1
回答
“`
FnOnce
`”的实现在异步递归中不够通用
、
我试图用Rust编写几个递归异步
函数
。我
创建
了一个最小的例子来说明我所面临的问题:use async_recursion::async_recursion`fn(&'0 std::string::String) -> tokio::task::JoinHandle<Result<(), anyhow::Error>>` must implement `
FnOnce
<(&std
浏览 15
提问于2022-02-03
得票数 2
回答已采纳
2
回答
移动装箱
函数
时“无法移动
FnOnce
类型的值”
下面是一个代码片段,它说明了我遇到的一个问题: Bar(Box<
FnOnce
(i32)>), }当我编译这段代码时,我会收到以下错误消息: error[E0161]: cannot move a value of type std::ops::
FnOnce
(i32) + 'static: the size of std::ops::
FnOnce
(i32) + &
浏览 3
提问于2015-05-23
得票数 12
回答已采纳
1
回答
对于接受
函数
并返回返回线程句柄的另一个
函数
,类型签名应该是什么?
、
我试图编写一个
函数
parallelize,它以
函数
B作为参数并返回
函数
C,其中C返回运行B的线程的句柄。我知道这可能是笨重的或荒谬的;它主要是作为一个学习项目。更高层次的目标是在迭代器上实现并行映射
函数
,其中列表中的每个元素将被映射到不同的线程中(或者最终可能通过线程池)。我很快就意识到我已经疯了。鉴于我所描述的,parallelize的类型应该是什么?
浏览 1
提问于2017-08-10
得票数 1
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
快速创建数组的函数
如何在Python中创建一个自定义函数
MySQL创建计算字段及基本函数
Rust中的Fn、FnMut 和 FnOnce都有什么区别?
Python列表干货:创建数字列表:range函数的用法
热门
标签
更多标签
云服务器
ICP备案
实时音视频
即时通信 IM
对象存储
活动推荐
运营活动
广告
关闭
领券