8.19 rust closure 作为参数传递

ChunkKey::in_range_relative(&|ck: &ChunkKey| {

    // 如果记录为已发送区块了,就记录到新的已发送区块map里。

    // 没有发送记录,就加入到not sent,
});

||两竖线中写参数

接收函数

pub fn in_range_relative(callback: &dyn Fn(&ChunkKey)) {

8.19更新

发现fn捕获的内容不能更改,需要换成FnMut

同时也试了下泛型函数,也区分了下impl和dyn

// pub fn in_range_relative<F: FnMut(ChunkKey)>(mut callback: F) {
    pub fn in_range_relative(callback: &mut impl FnMut(ChunkKey)) {
© 2021 hanbaoaaa record.浙ICP备20005263号
asdad
联系方式 asdasd
2021-5-8 4:19
sss
回复数 (0) 点击展开
加载更多

新增评论

称呼
联系方式
邮箱(选填)
内容

提交

取消