C++标准库类型vector及迭代器iterator简介

Vector是C++标准库类型,称为容器,一个容器中的所有对象必须是同一种类型的。与数组相比,其最大的优点就是动态增长。Vector是一个类模板,并不是数据类型,而vector<int>和vector<string>才是数据类型。其下标的类型为vector<T>::size_type类型。

1:vector对象的定义和初始化

       <1>vector<T> v

       <2>vector <T> v(v1)   v1 是v的一个副本

       <3>vector<T> v(n)   v含有初始化的元素的n个副本

       <4>vector<T> v(n,i)  v包含n个值为i的元素

2:vector对象的操作

       v.empty()   v.size()  v.push_back()  v[n]   v1=v2 v1 == v2  != >= <= >

注意:必须是已存在的元素下标才能用下标操作符进行索引

迭代器简介

       这里主要想讲解const_iterator 和const类型的迭代器的区别

Const_iterator 主要用于读取容器内的值而不改变其值

Const_iterator 可以改变迭代器本身 但不能改变其所指的容器内的值

Const 不可以改变迭代器本身 但可以改变其所指的容器内的值。


注意:数组和指针是类似于vector和迭代器类型的低级复合类型。现代C++程序应尽量使用vector和迭代器类型,而避免使用低级的数组和指针。设计良好的程序只有在强调速度时才在类实现的内部使用数组和指针。


原文地址:https://www.cnblogs.com/keanuyaoo/p/3296981.html