The iterators are designed to optimize very well (they use pointers arithmetic internally); so that gives you the benefit of no unsafe code *and* equal (or faster) speed.