cb09a_c++_顺序容器的操作2
在顺序容器中添加元素
vector不能向前插入数据,list可以用insert
c.push_back(t);
c.push_front(t);
c.insert(p,t);在迭代器p,插入t
c.insert(p,n,t);在迭代器p,插入n个t
c.insert(p,b,e);把迭代器b,e之间的数据,插入到迭代器p指向的位置。
容器元素都是副本
添加元素可能会使迭代器失效
避免存储end操作返回的迭代器

welcome to discuss
txwtech@163.com

//vector<int>::iterator last = ivec2a.end();//不要这样写,不要提前保存。
直接在某个地方用:ivec2a.end();
while(first!=ivec2a.end())//这样既就ok咯。
whiel(first!=last)//这样不好。不建议
while(it!=)
string sarray[4] = {"qusai","simba","frollo","scar"};//字符串数组
const char *str[]= { "qusai","simba","frollo","scar" };//字符串数组

 /*cb09a_c++_顺序容器的操作2
在顺序容器中添加元素
vector不能向前插入数据,list可以用insert
c.push_back(t);
c.push_front(t);
c.insert(p,t);在迭代器p,插入t
c.insert(p,n,t);在迭代器p,插入n个t
c.insert(p,b,e);把迭代器b,e之间的数据,插入到迭代器p指向的位置。
容器元素都是副本
添加元素可能会使迭代器失效
避免存储end操作返回的迭代器 welcome to discuss
txwtech@163.com //vector<int>::iterator last = ivec2a.end();//不要这样写,不要提前保存。
直接在某个地方用:ivec2a.end();
while(first!=ivec2a.end())//这样既就ok咯。
whiel(first!=last)//这样不好。不建议
while(it!=)
string sarray[4] = {"qusai","simba","frollo","scar"};//字符串数组
const char *str[]= { "qusai","simba","frollo","scar" };//字符串数组
*/ #include <iostream>
#include <vector>
#include <list>
#include <deque>
#include <string> using namespace std;
int main()
{
vector<string> svec;
list<string> slist;
deque<string> sdeq; svec.push_back("Bill");
svec.push_back("Tom");
svec.push_back("Mary"); slist.push_back("Bill");
slist.push_back("Tom");
slist.push_back("Mary"); sdeq.push_back("Bill");
sdeq.push_back("Tom");
sdeq.push_back("Mary"); slist.push_front("Primer");
slist.push_front("C++"); sdeq.push_front("Primer");
sdeq.push_front("C++"); for (list<string>::iterator iter = slist.begin();
iter != slist.end(); ++iter)
cout << "slist data: " << *iter << " " << endl;;
cout << endl; list<string>::iterator it = slist.begin();
cout << *it << endl;
++it;
cout << *it << endl; //slist插入数据,迭代器所指向的数据的前面
slist.insert(it,"hello");
for (list<string>::iterator iter = slist.begin();
iter != slist.end(); ++iter)
cout << "slist data: " << *iter << " " << endl;;
cout << endl; it = slist.begin();
++it;
++it;
++it;
cout << *it << endl;//显示bill slist.insert(it, , "hi");//bill前面插入10个hi. string sarray[] = {"qusai","simba","frollo","scar"};//字符串数组
cout << sarray[] << endl;
const char *str[]= { "qusai","simba","frollo","scar" };//字符串数组
cout << str[] << endl; it = slist.begin();
cout << *it << endl;//显示c++
++it;
cout << *it << endl;//显示hello slist.insert(it, sarray + , sarray + );//把"simba","frollo","scar"插入到hello前面 cout << "显示插入后的数据: " << endl;
for (list<string>::iterator iter = slist.begin();
iter != slist.end(); ++iter)
cout << "slist data: " << *iter << " " << endl;;
cout << endl; //vector<int> ivec2a;
list<int> ivec2a;
ivec2a.push_back();
ivec2a.push_back();
ivec2a.push_back(); list<int>::iterator first = ivec2a.begin();
//vector<int>::iterator last = ivec2a.end();//不能这样写,不能提前保存。
//while (first != last)//不能这样写,不能提前保存。因为end在变化
while(first!=ivec2a.end())//这样既就ok咯。
{
ivec2a.insert(first,);
++first;
}
for(list<int>::iterator i=ivec2a.begin();
i!=ivec2a.end();++i)
{
cout << *i << endl;
} return ;
}

cb09a_c++_顺序容器的操作2-在顺序容器中添加元素_插入数据的更多相关文章

  1. python数据库操作常用功能使用详解(创建表/插入数据/获取数据)

    实例1.取得MYSQL版本 复制代码 代码如下: # -*- coding: UTF-8 -*-#安装MYSQL DB for pythonimport MySQLdb as mdbcon = Non ...

  2. C++ 基于STL的演讲比赛流程管理系统(sort算法+小型算法(accumulate)+内建函数对象+string字符串拼接+字符串截取+多个容器基础操作+与用户交互+文件的读写+保存+重建+整体文件数据的清空)

    1 /* 2 比赛规则: 3 学校举行一演讲比赛,共12个人参加,比赛两轮,第一轮为淘汰赛 第二轮为决赛 4 每名选手都有对应的编号:如10001~10012 5 比赛方式:分组比赛 每组6人 6 第 ...

  3. cb10a_c++_顺序容器的操作3关系运算符

    cb10a_c++_cb09a_c++_顺序容器的操作3 2 顺序容器的操作3 3 关系运算符 4 所有的容器类型都可以使用 5 比较的容器必须具有相同的容器类型,double不能与int作比较 6 ...

  4. C++ 容器(一):顺序容器简介

    C++提供了使用抽象进行高效编程的方式,标准库中定义了许多容器类以及一系列泛型函数,使程序员可以更加简洁.抽象和有效地编写程序,其中包括:顺序容器,关联容器和泛型算法.本文将简介顺序容器(vector ...

  5. cb14a_c++_顺序容器的操作7_赋值与交换(swap)_vector转list

    cb14a_c++_顺序容器的操作7_赋值与交换(swap) vector数据赋值给list, slist.assign(svec.begin(), svec.end());//这样可以转 svec- ...

  6. ca13a_c++_顺序容器的操作6删除元素

    /*ca13a_c++_顺序容器的操作6删除元素c.erase(p) //删除迭代器p指向的位置c.erase(b,e) //删除b to e之间的数据,迭代器b包括,e不包括c.clear()//删 ...

  7. cb11a_c++_顺序容器的操作4_容器大小操作_resize-max_size

    cb11a_c++_顺序容器的操作4 2 容器大小的操作 3 c.size() 容器当前的个数 4 c.max_size(),容器最大存储量 5 c.empty() 是否为空 6 c.resize(n ...

  8. cb08a_c++_顺序容器的操作1

    cb08a_c++_顺序容器的操作1容器定义的类型别名begin(闭区间)和end(开区间)成员{first,last)左闭右开,左包括,右不包括,end()指向最后一个的下一个. /*cb08a_c ...

  9. C++ Primer : 第九章 : 顺序容器的操作以及迭代器失效问题

    顺序容器的添加.访问.删除操作以及forward_list的特殊操作,还有迭代器失效问题. 一.向容器添加元素 // array不支持这些操作 // forward_list有自己撰于的版本的inse ...

随机推荐

  1. 什么是cookie?

    cookie是什么? 其实cookies是由网络服务器存储在你电脑硬盘上的一个txt类型的小文件,它和你的网络浏览行为有关,所以存储在你电脑上的cookies就好像你的一张身份证,你电脑上的cooki ...

  2. 《HelloGitHub》第 50 期

    兴趣是最好的老师,HelloGitHub 就是帮你找到兴趣! 简介 分享 GitHub 上有趣.入门级的开源项目. 这是一个面向编程新手.热爱编程.对开源社区感兴趣 人群的月刊,月刊的内容包括:各种编 ...

  3. [Python基础]006.IO操作

    IO操作 输入输出 print raw_input input 文件 打开文件 关闭文件 读文件 写文件 文件指针 实例 输入输出 输入输出方法都是Python的内建函数,并且不需要导入任何的包就可以 ...

  4. string 去重复

    //AABB>>AB         //AAA>>A         //ABBAA>ABA public static string SpiltString(stri ...

  5. Java动态代理与静态代理以及它能为我们做什么

    相信我们在网上和平时学习和工作中或多或少都接触过Java的代理模式,经常听到什么静态代理.动态代理的一些名词.但我们是否真的很清楚这些呢?至少我在面试时,发现很多人并不很清楚. 首先代理比较好理解,就 ...

  6. 2019-ICLR-DARTS: Differentiable Architecture Search-论文阅读

    DARTS 2019-ICLR-DARTS Differentiable Architecture Search Hanxiao Liu.Karen Simonyan.Yiming Yang GitH ...

  7. CE未知数值修改

    一样,用植物大战僵尸测试.来搜索修改向日葵生产阳光的CD值. 由于开始并不知道向日葵cd的初始值,所以用CE搜索未知的初始值 返回游戏,每次向日葵晃一下搜索一下减少的值. 锁定修改为0发现成功. 然后 ...

  8. 北京理工大学复试上机--2001A

    1.编写程序,计算下列分段函数 y=f(x)的值. y = -x + 2.5, 0 <= x < 2 y = 2 - 1.5 (x - 3) (x - 3), 2 <= x < ...

  9. VNC CentOS 7 远程工具,VNC CentOS 7 远程工具推荐!

    IIS7服务器管理工具是一款能够在Windows和Linux系统下进行VNC使用的软件!它能够成为VNC的客户端,帮助操作者完成VNC的相关命令!同时,它还能够作为FTP的操作客户端,实现FTP的传输 ...

  10. URL跳转与钓鱼

    从登录页跳转到另一个页面就叫做URL跳转. 1.URL跳转 URL跳转一般分为两种,(1)客户端跳转:(2)服务端跳转.对用户来说,两种跳转都是透明的,都是指向或者跳转到另一个页面,页面发生了改变.但 ...