Effective STL中文版的笔记(5)

>我来写笔记

按有用程度 按页码先后 最新笔记

  • 温良玉

    温良玉 (止水狂沙,道取中庸)

    如果需要,就要使用“基于节点的容器”,例如list,因为对这一类容器的插入和删除操作从来不会使迭代器、指针和引用变为无效(除非它们指向了一个正在删除的元素)。而针对连续内存的容器,插入和删除都会使迭代器、指针和引用变为无效。 迭代器、指针和引用都是指向地址的,而基于节点的容器,插入和删除不会改变原有元素的地址,因此不失效。 但是基于连续内存的容器,插入和删除都会移动很多元素,影响其他元素的地址,因此失...

    2014-01-07 10:03

  • 温良玉

    温良玉 (止水狂沙,道取中庸)

    重点一: vector是默认应该使用的容器类型,当有频繁的删除和插入操作,应该使用list,当操作发生在头尾,deque是最优选择。 list,也就是链表,插入和删除操作代价较小。而vector,类似数组,支持随机访问,但是删除和插入代价较大。 重点二: STL容器是有分类的。 基本可以分为“连续内存容器”和“基于节点的容器”。 前者使用连续内存分配,例如vector deque string皆属于此类。 后者使用动态内存分配,例如list。

    2014-01-06 20:01

  • [已注销]

    [已注销]

    ## 术语: * 重载了函数调用操作符(即,operator())的任何类叫做仿函数类。从这样的类建立的对象称为函数对象或仿函 数。 ## 条款1:仔细选择你的容器 标准STL序列容器:vector、string、deque和list 标准STL关联容器:set、multiset、map和multimap 标准的连续内存容器是vector、string和deque。 ## 条款2:小心对“容器无关代码”的幻想 不同的容器是不同的,而且它们的优点和缺点有重大不同。它们并不被..

    2013-03-07 16:14

  • Marius

    Marius

    C++ 里面的赋值操作是需要特别小心的,如果你“什么都没干”,那么编译器会为你“干些你可能不喜欢”的事。 拷进去,拷出来。这就是STL的方式。... ,拷贝对象是STL的方式。 潜在问题,正如拷贝的问题: 1. 大对象拷贝rang贵; 2. 将子类拷贝进基类容器,会被分割;

    2013-01-03 16:27

  • 王银华

    王银华

    经典

    2012-06-10 15:02

笔记是你写在书页留白边上的内容;是你阅读中的批注、摘抄及随感。

笔记必须是自己所写,不欢迎转载。摘抄原文的部分应该进行特殊标明。

Effective STL中文版

>Effective STL中文版