C++中,下标运算符随机访问数组中的元素是很常见的一种方法,但是这种方法有一个很大的弊端,下标运算符并不检查下标是否在合法范围内,使用越界的下标将会使程序产生意想不到的错误。
但是在容器操作中,有一个at成员函数,at成员函数类似下标运算符,如果下标越界,at会抛出一个out_of_range异常。
例子
vector vec1; //一个空的vector容器
cout<< vec1[0]; //出错,试图打印第一个元素,而vec1中没有元素
cout<< vec1.at(0); //抛出一个out_of_range异常