Originally posted by rmullen3

Draco: That shouldn't make a difference, as the compiler would calculate a.size() only once.
Not necissarily. In many cases the compiler can't know that the size function will be returning the same value anytime.