c++ STL总结

1.vector:

              变长数组   
              头文件:#include<vector>   
              using namespace std;

1.1定义:

vector<typename> name; 
vector<int> name;
vector<double> name;
vector<node> name;//node是结构体类型
//如果typename也是一个STL容器,定义的时候>>符号之间要加上空格 即: vector<vector<int> > name;

vector<vector<int> > name;
//vector数组定义:
vector<typename> arrayname[size];
//arrayname[0]--arrayname[size-1]都是一个vector容器
//与vector<vector<typename> > name 不同的是,vector数组写法一维长度已经固定,另一维变化

1.2访问元素:

/*
两种访问方式:
*/
// 1.通过下标访问
vector<typename> vi;
//直接访问 vi[index] 即可

//2.通过迭代器访问:
vector<typename>::iterator it;
//通过 *it访问vector里的元素

vector<int> vi;
vector<int>::iterator it=vi.begin();
printf ( " % d \ n " , *( it+1) );

//另一种写法
for( vector<int>::iterator it=vi.begin();it!=vi.end();it++){
   
        printf("%d",*it)

}
// begin()函数的作用是取vi的首元素地址,end()函数取尾元素地址的下一个地址
//只有vector和string中,才允许使用vi.begin()+n这中迭代器加证书的写法

1.3 常用函数:

// push_back()   ---------push_back(x)在vector后面添加一个元素x
for(int i=1;i<=3;i++){
   
    vi.push_back(i);
}

//  pop_back()        ------------删除vector的尾元素

//   size()           ---------------获得vector元素的个数
printf("%d\n",vi.size());

//   clear()    ----------------清空vector中的所有元素

//    insert() ---------------- insert ( it , x ) 向vector的任意迭代器it处插入一个元素x
vi.insert(vi.begin+2,-1);

//     erase() ---------------删除单个元素或者删除一个区间内所有元素
vi.erase(it)// 删除迭代器为it处的元素
vi.erase(vi.begin()+3)

vi.erase(first,last) //删除【first,last)内所有元素
vi.erase(vi.begin
  • 7
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值