Effective C++读书笔记 第九部分 杂项讨论

条款53: 不要轻忽编译器的警告 条款54: 让自己熟悉包括TR1在内的标准程序库 本条款告诉程序员: 1.C++标准程序库的主要机能由STL、iostreams、locales组成,并包括C99标准程序库。 2.TR1添加了智能指针、一般化函数指针、hash-based容器、正则表达式,...

2013-05-21 14:39:18

阅读数 630

评论数 0

Effective C++读书笔记 第八部分 定制new和delete

条款49: 了解new-handler 的行为 (1) set_new_handler 允许客户指定一个函数,在内存分配无法获得满足时被调用。 (2) No-throw new 是一个颇为局限的工具,因为它只适用于内存分配;后继的构造函数调用还是可能抛出bad_alloc异常。 条款50: ...

2013-05-21 14:02:42

阅读数 759

评论数 0

Effective C++读书笔记 第七部分 模板与泛型编程

条款41:了解隐式接口和编译期多态 (1) class和templates都支持接口(interfaces)和多态(polymorphism)。 (2) 对classes而言接口是显式的(explicit),以函数签名为中心。多态则是通过virtual函数发生于运行期。 (3) 对templ...

2013-05-21 13:59:02

阅读数 620

评论数 0

Effective C++读书笔记 第六部分 继承与面向对象设计

如果你了解C++各种特性的意义,你会发现,你对OOP的看法改变了。它不再是一项用来划分语言特性的仪典,而是可以让你通过它说出你对软件系统的想法。一旦你知道该通过它说些什么,移转至C++世界也就不再是可怕的高要求了。  条款32:确定你的public继承塑模出is-a关系     以C++进行面...

2013-05-21 13:30:44

阅读数 767

评论数 0

Effective C++读书笔记 第五部分 实现(Implementations)

大多数情况下,适当提出你的类定义以及函数声明,是花费最多心力的两件事。尽管如此,还是有很多东西需要小心:太快定义变量可能造成效率上的拖延;过度使用转型(casts)可能导致代码变慢又难维护,又招来微妙难解的错误;返回对象“内部数据之号码牌(handls)”可能会破坏封装并留给客户虚吊号码牌;为考虑...

2013-05-21 12:56:33

阅读数 631

评论数 0

Effective C++读书笔记 第四部分 设计与声明

所谓软件设计,是“令软件做出你希望它做的事情”的步骤和做法,通常以颇为一般性的构想开始,最终变成十足的细节,以允许特殊接口的开发。 条款18:让接口容易被正确使用,不易被误用 理想上,如果客户企图使用某个接口而却没有获得他所预期的行为,这个代码不该通过编译;如果代码通过了编译,它的作为就该...

2013-05-21 12:39:54

阅读数 633

评论数 0

Effective C++读书笔记 第三部分 资源管理

所谓资源就是,一旦用了它,将来必须还给系统。C++程序中最常使用的资源就好似动态分配内存(如果你new了,却忘了delete,会导致内存泄露),但内存只是你必须管理的众多资源之一。其它常见的有文件描述符(file descriptors)、互斥器(mutex)、图形界面中的字形和画刷。数据库连接以...

2013-05-21 12:26:41

阅读数 707

评论数 0

Effective C++读书笔记 第二部分 构造/析构/赋值运算

条款05: 了解C++ 默默编写并调用哪些函数 本条款告诉程序员,编译器自动为你做了哪些事情。 用户定义一个empty class (空类),当C++ 处理过它之后,如果你自己没声明,编译器就会为它声明(编译器版本的)一个copy 构造函数、一个copy assignment操作符和一个析构函...

2013-05-21 11:42:40

阅读数 719

评论数 0

Effective C++读书笔记 第一部分 让自己习惯C++

条款01:视C++为一个语言联邦 本条款提示读者,C++已经不是一门很单一的语言,而应该将之视为一个由相关语言组成的联邦。从语言形式上看,它是一个多重范型编程语言(multiparadigm programminglanguage) ,一个同时支持过程形式(procedural)、面向对象形...

2013-05-21 09:47:39

阅读数 701

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭