☆rust
fn main() {
let mut a = vec![];
for i in 0..3 {
a.push(|| println!("{i}"));
}
a.iter().for_each(|f| f());
}
error[E0597]: `i` does not live long enough

☆rust
fn main() {
let mut a = vec![];
for i in 0..3 {
a.push(move || println!("{i}"));
}
a.iter().for_each(|f| f()); // 0 1 2
}