effective stl 条款15 小心string实现的多样性
2017-08-02 17:04
375 查看
实际上每个string实现都容纳了下面的信息:
● 字符串的大小,也就是它包含的字符的数目。
● 容纳字符串字符的内存容量。(字符串大小和容量之间差别的回顾,参见条款14。)
● 这个字符串的值,也就是,构成这个字符串的字符
另外,一个string可能容纳
● 它的配置器的拷贝。对于为什么这个域是可选的解释,转向条款10并阅读关于这个古怪的管理分配器的规则。
依赖引用计数的string实现也包含了
● 这个值的引用计数
● string对象的大小可能从1到至少7倍char*指针的大小。
● 新字符串值的建立可能需要0、1或2次动态分配。
● string对象可能是或可能不共享字符串的大小和容量信息。
● string可能是或可能不支持每对象配置器。
● 不同实现对于最小化字符缓冲区的配置器有不同策略。
● 字符串的大小,也就是它包含的字符的数目。
● 容纳字符串字符的内存容量。(字符串大小和容量之间差别的回顾,参见条款14。)
● 这个字符串的值,也就是,构成这个字符串的字符
另外,一个string可能容纳
● 它的配置器的拷贝。对于为什么这个域是可选的解释,转向条款10并阅读关于这个古怪的管理分配器的规则。
依赖引用计数的string实现也包含了
● 这个值的引用计数
● string对象的大小可能从1到至少7倍char*指针的大小。
● 新字符串值的建立可能需要0、1或2次动态分配。
● string对象可能是或可能不共享字符串的大小和容量信息。
● string可能是或可能不支持每对象配置器。
● 不同实现对于最小化字符缓冲区的配置器有不同策略。
相关文章推荐
- effective STL - 小心string实现的多样性
- Effective STL 条款13
- effective c++条款15学习总结
- Effective STL 条款45
- Effective STL 条款28
- Effective STL 条款25:熟悉非标准散列容器
- More Effective C++ 条款15
- Effecective STL: 容器 (条款1: 小心选择你的容器)
- Effective STL学习笔记-条款13|14
- Effective STL学习笔记-条款33
- More Effective C++(条款15:了解异常处理(exception handling)的成本)
- Effective STL 条款16
- 编写可适配的函数对象(Effective stl 条款40)
- Effective C++条款15、16、17
- Effective STL 条款18
- Effective STL 条款16
- <<Effective STL>> 条款31 容器排序笔记
- effective C++ 条款 34:区分接口继承和实现继承
- Effective STL学习笔记-条款40
- Effective STL学习笔记-条款20