Vector
1、创建
std::vector< int> m_vectorAge;//创建用于保存年纪的int数据的vector
2、插入数据
m_vectorAge.push_back(5);//在vector的尾部插入一条数据
3、使用迭代器访问数据
for
(
std
::
vector
<
int
>::
iterator
it=
m_vectorAge
.
begin
();it!=
m_vectorAge
.
end
(); it++)
{
// it是指向迭代器数据的指针
}
1:使用it +( ->) 可以访问对象里面的数据
2:使用(* it)来拿到对象里面的数据
比如说,如果在vector里面是一个man对象,man里面保存的是age(年龄)和sex(性别)
可以像指针那样访问
it->age
it->sex
可以直接拿到数据
(*it).age
(*it).sex
这两种用法都是可以的
4、使用下标访问数据
m_vectorAge[i] ; //i是数据在vector里面的位置position
5、遍历删除数据
for(std::vector<int>::iterator it=m_vectorAge.begin();it!=m_vectorAge.end(); )
{
if( xxxxxxxx)//满足删除条件
{
it=m_vectorAge.erase(it);//删除元素,it指向已删除元素的下一个位置
//这句是一样的作用,在删除之前指向下一个位置
//m_vectorAge.erase(it++);//这个方法有bug,因为it实际上增加了两次,在vector的删除中最好用上面的方式
}
else
{
++it;
}
}
6、vector大小
m_vectorAge.size();
7、vector清空