<>语法与常规生命周期绑定有何不同?
请考虑以下代码:
trait Trait<T> {}fn foo<'a>(_b: Box<Trait<&'a usize>>) {}fn bar(_b: Box<for<'a> Trait<&'a usize>>) {}这两个函数foo和bar似乎接受Box<Trait<&'a usize>>,虽然foo比更简明做它bar。他们之间有什么区别?
另外,在什么情况下我需要for<>像上面那样的语法?我知道Rust标准库在内部使用它(通常与闭包有关),但为什么我的代码需要它呢?
梦里花落0921
30秒到达战场
随时随地看视频慕课网APP