effective c++系列

程序员小x大约 4 分钟C++C++effective c++读书笔记

effective c++系列

章节

01-视c++为一个语言联邦open in new window

02-尽量以 const,enum,inline 替换 #defineopen in new window

03 尽可能使用constopen in new window

04 确定对象被使用前已被初始化open in new window

05 了解c++默默编写并调用哪些函数open in new window

06 不自动生成的函数,就明确拒绝open in new window

07 为多态基类声明virtual析构函数open in new window

08 别让异常逃离析构函数open in new window

09 绝不要在构造和析构过程中调用virtual函数open in new window

10 令operator= 返回一个reference to * thisopen in new window

11 operator= 处理自我赋值open in new window

12 复制对象时勿忘其每一个成分open in new window

13 以对象管理资源open in new window

14 资源管理类中小心copying行为open in new window

15 在资源管理类中提供对原始资源的访问open in new window

16 成对使用new和delete时采取相同形式open in new window

17 独立语句将newed对象置入智能指针open in new window

18 让接口容易被正确使用, 不易被误用open in new window

19 设置class犹如设计typeopen in new window

20 传引用代替传值open in new window

21 必须返回对象时, 别妄想返回其referenceopen in new window

22 将成员变量声明为privateopen in new window

23 宁以non-member、non-friend替换member函数open in new window

24 若所有参数皆需要类型转换,请为此采用non-member函数open in new window

25 考虑写一个不抛出任何异常的swap函数open in new window

26 尽量延后变量定义式的出现时间open in new window

27 尽量少做转型动作open in new window

28 避免返回handles指向对象内部成分open in new window

29 为异常安全而努力是值得的open in new window

30 彻底了解inline的里里外外open in new window

31 文件间的编译依存关系降低至最低open in new window

32 确定你的public继承塑模出is-a的关系open in new window

34 区分接口实现和实现继承open in new window

35 考虑virtual函数以外的其他选择open in new window

36 绝不重新定义继承而来的non-virtual函数open in new window

37 不重新定义继承而来的缺省参数值open in new window

38 通过复合塑模出has-a或者根据某物实现出open in new window

39 明智而审慎地使用private继承open in new window

40 明智而审慎地使用多重继承open in new window

41 隐式接口和编译器多态open in new window

42-typename的双重含义open in new window

43-处理模板化基类的名称open in new window

44 与参数无关的代码抽离templatesopen in new window

45 运用成员函数模板接受所有兼容类型open in new window

46 需要类型转换时请为模板定义非成员函数open in new window

47 请使用trait class 表现类型信息open in new window

48 认识template元编程open in new window

49 了解new-handler的行为open in new window

50 了解new和delete的合理替换时机open in new window

51 编写new和delete时需固守常规open in new window

52 写了placement new也要写placement deleteopen in new window

53-不要忽略编译器的警告open in new window

54-熟悉TR1在内的标准程序库open in new window

Loading...