这里是vector的所有构造方法,成员方法的一些总结,具体的可以详看后面的链接。
reference operator[] (size_type n);
const_reference operator[] (size_type n) const;
返回一个指向位置n的元素的引用。
一个相似的方法是at,和该方法具有一样的行为,不同的是at是检测边界的,并且当请求的位置超出范围后会抛出out_of_range异常。
不应该在n超出范围的时候调用该方法,这会导致未知的错误。
n是元素在容器中的位置。
注意第一个元素的位置是0而不是1.
如果容器的大小大于n,不会抛出异常。
否则,将导致未知的错误。
原文地址:http://blog.csdn.net/qq844352155/article/details/38685515
———————————————————————————————————————————————————
reference at (size_type n);
const_reference at (size_type n) const;
返回一个指向位置n的元素的引用。
该方法将自动检测n是否是在一个有效的范围,如果不是则将抛出out_of_range异常。
另一个对照的方法是operator[],这个方法不会检测数据的有效性。
Parameters
n是元素在vector中的位置。
如果n大于或者等于数组的size,那么将会抛出out_of_range异常。
注意,第一个元素的位置为0而不是1.
返回值为元素在容器内指定位置的值
当n不在范围内时抛出out_of_range异常。
原文地址:http://blog.csdn.net/qq844352155/article/details/38599145
__________________________________________________________________________________________________________________________________________
reference front();
const_reference front() const;
访问第一个元素
返回第一个元素的引用。
和begin不一样,begin是返回一个迭代器,而front是返回一个直接引用。
对一个空的容器调用该方法将会导致不可预料的结果。
一个指向该vector容器中第一个元素的引用.
原文地址:http://blog.csdn.net/qq844352155/article/details/38458047
———————————————————————————————————————————————————
reference back();
const_reference back() const;
返回最后一个元素的引用。
和end不一样的是,end是返回一个指向超尾元素的迭代器,而这个函数是直接返回一个引用。
对一个空的容器调用该方法会导致未知的行为。
原文地址:http://blog.csdn.net/qq844352155/article/details/38516647
—————————————————————————————————————————————————————————————————————————————
value_type* data() noexcept;
const value_type* data() const noexcept;
因为vector里面的元素都是顺序连续存放的,该指针可以通过偏移量来访问数组内的所有元素。
Parameters
none返回一个指针指向数组第一个元素所在的内存。
——————————————————————————————————————————————————————————————————
//总结的不好的地方请多多指导,可以在下面留言或者点击左上方邮件地址给我发邮件,指出我的错误以及不足,以便我修改,更好的分享给大家,谢谢。
转载请注明出处:http://blog.csdn.net/qq844352155
author:天下无双
Email:coderguang@gmail.com
2014-8-27
于GDUT
——————————————————————————————————————————————————————————————————
STL vector总结(四) Element access(37)
原文地址:http://blog.csdn.net/qq844352155/article/details/38868483