java变量生命_延长'for'变量的生命

当我在Rust 0.12.0中编译下面的代码时,我收到以下错误:

error: borrowed value does not live long enough

let _ = match re.captures(a_line.unwrap().as_slice()) {

如何延长a_line的生命周期以便将c1推送到vect1?

let vect = process_file(filename_ref);

...

fn process_file(filename: &str) -> Vec {

let re = regex!(r"^(\w+)\t(\w+)\t(\w+)\t(\w+)\n$");

let mut vect1 = Vec::new();

let filepath = Path::new(filename);

let _ = match File::open(&filepath) {

Ok(f) => {

let mut filebuffer = BufferedReader::new(f);

for a_line in filebuffer.lines() {

let _ = match re.captures(a_line.unwrap().as_slice()) {

Some(c) => {

let c1 = c.at(1);

vect1.push(c1);

...

},

...

};

} // end for

},

Err(e) => println!("Error: {}", e)

};

return vect1;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值