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. 关于CAS单点登录配置文件误修改导致的JSP报错问题

    weblogic环境下搭建CXF环境时,为了避免CAS拦截webservice服务URL所以设置CAS为不拦截,无修改了CAS配置的其它地方导致工程启动正常,一旦访问就会报JSP的错误. [Servl ...

  2. Parrot os KDE还是MATE版本

    在经历了KDE桌面痛苦折磨后,准备转投MATE的怀抱,不得不说Parrot KDE的ram的占有和windows 10差不多,大量的图形化处理,让我本来不多的内存更加血上加霜. 所以,关于版本的推荐, ...

  3. 01 . HAProxy原理使用和配置

    HaProxy简介 HaProxy是什么? HAProxy是一个免费的负载均衡软件,可以运行于大部分主流的Linux操作系统上. HAProxy提供了L4(TCP)和L7(HTTP)两种负载均衡能力, ...

  4. jchdl - RTL实例 - And2(结构体的使用)

    https://mp.weixin.qq.com/s/qTgeBF9N0mx5UK3xWDb3jg   jchdl对Verilog做了增强,增加了用户自定义结构体类型.使用自定义结构体,可以对输入和输 ...

  5. 基于GTID搭建主从MySQL

    目录 基于gtid搭建主从MySQL 一.GTID的使用 二.GTID的简介 三.GTID的构成 四.查看GTID的执行情况 4.1 gtid_executed 4.2 gtid_own 4.3 gt ...

  6. MethodHandle(方法句柄)系列之一:MethodHandle和MethodType

        阅读此文章的作者建议先了解java反射和动态代理.       java7中为间接调用方法引入了新的api,其中最关键的是java.lang.invoke包,即方法句柄.我们可以看成是java ...

  7. 使用turtle库画太极图

    from turtle import * pensize(3) penup() pencolor("black") reset() speed(10) pendown() circ ...

  8. Java实现 LeetCode 689 三个无重叠子数组的最大和(换方向筛选)

    689. 三个无重叠子数组的最大和 给定数组 nums 由正整数组成,找到三个互不重叠的子数组的最大和. 每个子数组的长度为k,我们要使这3*k个项的和最大化. 返回每个区间起始索引的列表(索引从 0 ...

  9. Python之大数据库hive实战

    今天和大家分享的是Python如何连接hive数据库来进行hivesql的查询操作.   step1:环境准备 Python版本:3.6.2 Windows版本:Windows10版本的64位 ste ...

  10. 09_EM算法

    今天是2020年3月5日星期四.预计开学时间不会早于四月初,真是好消息,可以有大把的时间整理知识点(实际上发文章的时间都6月6号了,希望9月份能开学啊,不耽误找工作~).每次导师找,整个人会变的特别烦 ...