小编Vit*_*liy的帖子

如何强制将值从内部范围移动到外部而不是借用?

我是Rust的新手.如何强制将值从内部范围移动到外部而不是借用?

let mut r_buf = BufReader::new(file.unwrap());
let mut eof = false;

while !eof {
    let piece = r_buf.fill_buf();
    if piece.is_ok() {
        let mut piece = piece.unwrap();
        let piece_len = piece.len();

        if opt.compress {
            let deflated = deflate_bytes(piece);
            if deflated.is_none() {
                panic!(format!("Cant deflate file {}", path.to_str().unwrap_or("")));
            }

            let deflate_unwrapped = deflated.unwrap();
            let deflate_deref = deflate_unwrapped.deref();
            piece = deflate_deref;
        }
        /* bf: &mut BufStream<File>*/
        let w = bf.write(piece);

        if w.is_ok() {
            written_bytes = w.unwrap();
        }
Run Code Online (Sandbox Code Playgroud)

我不能移动&[u8]deflate_derefpiece.我试过 …

rust

2
推荐指数
1
解决办法
1128
查看次数

标签 统计

rust ×1