Range Checking Vectors

This standard library vector can be used like an array. For example:

std::vector v(2); // vector of size 2v[0] = 5;v[1] = v[0];

If you’re using an out-of-range index, the behavior is undefined. The program might crash without an appropriate error message. The statement:

v[2] = 0;

gives undefined behavior. To access a vector element safely, the at() member function may be used rather than the operator[]. While the statements:

v.at(0) = 5;v.at(1) = v.at(0);

have the same effects as the statements indicated in the example above, the statement:

v.at(2) = 0;

does not cause undefined behavior, instead it throws an std::out_of_range exception.

Share the Post:
Share on facebook
Share on twitter
Share on linkedin

Overview

Recent Articles: