中文版Effective STL:50条有效使用STL的经验

admin 2022年09月25日 32次浏览

中文版Effective STL:50条有效使用STL的经验

图书封面

副标题:无

作者: Scott Meyers

内容简介:

前言

It came without ribbons! It came without tags!

It came without packages, boxes or bags!

—Dr. Seuss, How the Grinch Stole Christmas!, Random House, 1957

我第一次写关于STL(Standard Template Library,标准模板库)的介绍是在1995年,当时我在More Effective C++的最后一个条款中对STL做了粗略的介绍。此后不久,我就陆续收到一些电子邮件,询问我什么时候开始写Effective STL。

有好几年时间我一直在拒绝这种念头。刚开始的时候,我对STL并不非常熟悉,根本不足以提供任何关于STL的建议。但是随着时间的推移,以及我的经验的增长,我的想法开始有了变化。毫无疑问,STL库代表了程序效率和扩展性设计方面的一个突破,但是当我开始真正使用STL的时候,却发现了许多原来不可能注意到的实际问题。除了最简单的STL程序以外,要想移植一个稍微复杂一点的STL程序都会面临各种各样的问题,这不仅仅是因为STL库实现有各自的特殊之处,也因为底层的编译器对于模板的支持各不相同——有的支持非常好,有的却非常差。要获得STL的正确指南并不容易,所以,学习“STL的编程方式”非常困难,即使在克服了这个阶段的障碍之后,你要想找到一份既容易理解又精确描述的参考文档也是一大难题。最令人沮丧的是,即使一个小小的STL用法错误,也常常会导致一大堆的编译器诊断信息,而且每一条诊断信息都可能有上千个字符长,并且大多都会引用到一些在源代码中根本没有提到的类、函数或者模板(几乎都很难理解)。尽管我对STL赞赏有加,并且对STL编程人员们更是钦佩无比,但是要向从事实际开发工作的程序员推荐STL却感到非常不

目录预览:

​ 中文版Effective STL:50条有效使用STL的经验 (技术经典著作大系)
目录
扉页
版权页
译序
前言
致谢
引言
第1章 容器
第1条:慎重选择容器类型。
第2条:不要试图编写独立于容器类型的代码。
第3条:确保容器中的对象副本正确而高效。
第4条:调用empty而不是检查size()是否为0。
第5条:区间成员函数优先于与之对应的单元素成员函数。
第6条:当心C++编译器最烦人的分析机制。
第7条:如果容器中包含了通过new操作创建的指针,切记在容器对象析构前将指针delete掉。
第8条:切勿创建包含auto_ptr的容器对象。
第9条:慎重选择删除元素的方法。
第10条:了解分配子(allocator)的约定和限制。
第11条:理解自定义分配子的合理用法。
........


[EPUB下载]