吐血共享C++ primer(第四版)学习笔记 - 图文(4)

2019-08-30 22:05

++ first; }

c++语言允许两个容器进行其元素类型定义的关系运算。 顺序容器的大小操作 见:15顺序容器的大小操作

c.size()---返回类型为c::size_type c.max_size() c.empty() c.resize(n) c.resize(n,t) resize操作如果当前容器的长度大于新的长度值,则容器后面的元素会被删除;如果当前的容器长度小于新的长度值,则系统会在容器后部添加新元素。 访问顺序容器内元素的操作 见 16 访问顺序容器内元素的操作

if (!ilist.empty()) {

list::reference val = *ilist.begin();

list::reference val2 = ilist.front(); //两条语句均指向同一个元素 list::reference last =*-- ilist.end(); list::reference last2 = ilist.back(); }

//两条语句均指向同一个元素

删除顺序元素内元素的操作 见 :17 删除顺序元素内元素的操作

c.erase(p) c.erase(b, e) c.clear() c.pop_back() c.pop_front()----只适用于list或deque容器。

pop_front()和pop_back()函数的返回值并不是删除的元素的元素值,而是void,要获取删除

的元素值,则必须在删除元素之前调用front或back函数。

使用erase操作时,必须在容器中找到要删除的元素,寻找一个指定元素最简单的方法是使用标准库中的find函数或其他泛型算法。使用find时,必须将algorithm头文件包含进来,find函数需要一对标记查找范围的迭代器以及一个在该范围内查找的值作参数,查找完成后,返回一个迭代器,它指向具有指定值的第一个元素,或超出末端的下一位置。 string searchValue(“raoyi”);

list::iterator iter = find(slist.begin(), slist.end(), searchValue);

if (iter != slist.end()) //在删除元素之前,必须保证迭代器是不是end迭代器 slist.earse(iter);

删除容器内的所有元素: slist.clear();

slist.earse(slist.begin(),slist.end()); 删除部分元素:

list::iterator elem1, elem2;

elem1 = find(slist.begin(), slist.end(), val1); elem2 = find(elem1, slist.end(), val2); slist.earse(elem1, elem2);

赋值:见 18 顺序容器的赋值操作

c1 = c2 c1.swap (c2) c.assign(b ,e) c.assign (n ,t) sliat1.assign(slist2.begin(), slist2.end()); slist.assign(10, “raoyi!”);

vector类提供了两个成员函数:capacity(容量)和reserve,使程序员可以与vector容器内存分配的实现部分交互工作。capacity操作获取容器需要分配更多的存储空间之前能够存储的元素总数,而reserve操作则告诉vector容器应该预留多少个元素的存储空间。 ivec.capacity() //获得容器的容量 容量和size()不一样 当vector容器不得不重新分配新的存储空间时,以加倍当前容量的分配策略实现重新分配。 选择容器的提示:见19 选择容器的提示

string支持的容器操作 见 20 string支持的容器操作

构造string对象的其他方法 见 21 构造string对象的其他方法。

string与容器共有的和独有的功能 见 22 string与容器共有的和独有的功能

只适用于string类型的操作 见 23 只适用于string类型的操作

修改string对象的操作 见 24 修改string对象的操作

tring类型的查找操作 见 25 string类型的查找操作

string操作的返回值类型是string::size_type,请使用该类型的对象存储find的返回值。 string类型的compare操作 见26 string类型的compare操作


吐血共享C++ primer(第四版)学习笔记 - 图文(4).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:电子测量自测题

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: