Comment by stub_out
6 hours ago
C++ developers constantly wrestle with `vector` iterator invalidations. Good on Zig for making this a first-class concern.
6 hours ago
C++ developers constantly wrestle with `vector` iterator invalidations. Good on Zig for making this a first-class concern.
How does Rust avoid this?
In rust you cannot mutate anything that is being read basically. The borrow checker enforces this.
So an iterator takes an immutable reference to the vector and mutation requires a mut ref, and you can't have both at the same time.