Effective STL
2015-04-14 19:00:33 6 举报
AI智能生成
Effective STL(高效STL)是一种优化C++标准模板库(STL)性能的方法。它通过减少内存分配、提高算法效率和避免不必要的拷贝操作,从而提高程序的运行速度和资源利用率。实现Effective STL的方法包括使用迭代器而非指针、使用引用参数而非值传递、合理地使用容器和算法等。遵循这些原则,可以编写出更高效、更可维护的C++代码。
作者其他创作
大纲/内容
关联容器
元素排列顺序
等价的定义 equivalence
!(AB)
元素的排列顺序
相等的定义 equality
比较函数 op
!(A op B) && !(B op A)
确保两个相等的元素返回false
等价
子主题
指针元素在容器中的排列顺序
比较指针
比较指针成员
set与multiset中的键值key ???
map的操作
insert()
生成对象,直接插入
对象是pair<...>对象
operator [ ]
返回key的引用
调用构造函数产生临时对象
调用拷贝构造函数 写回key的引用
析构临时对象
vector与string
优先于动态数组
vector的一些成员
size()
capacity()
resize()
reserve()
string的多种实现
sizeof string
中介容器,与C API保持兼容
vector内存中顺序存储
string的成员函数 c_str()
小的技巧
swap()函数去除多余的空间
利用拷贝构造函数
swap()函数清除容器所有的空间
利用匿名变量
vector
bit位的存储,不能取其中一位的地址,非容器
替代方案:deque 与bitset
算法
目标区间问题
transform(...)
源数据
目标区间
transform(...)
使用插入型迭代器,确保目标被完全容纳
back_inserter()
需要容器支持push_back()
front_inserter()
需要容器支持push_front()
排序
收藏
0 条评论
下一页