点此搜书

当前位置:Effective C++影印本pdf电子书下载 > 工业技术
Effective C++影印本
  • 作 者:(美)迈耶斯著
  • 出 版 社:北京:中国电力出版社
  • 出版年份:2003
  • ISBN:7508314980
  • 标注页数:258 页
  • PDF页数:277 页
  • 请阅读订购服务说明与试读!

文档类型

价格(积分)

购买连接

试读

PDF格式

10

立即购买

点击试读

订购服务说明

1、本站所有的书默认都是PDF格式,该格式图书只能阅读和打印,不能再次编辑。

2、除分上下册或者多册的情况下,一般PDF页数一定要大于标注页数才建议下单购买。【本资源277 ≥258页】

图书下载及付费说明

1、所有的电子图书为PDF格式,支持电脑、手机、平板等各类电子设备阅读;可以任意拷贝文件到不同的阅读设备里进行阅读。

2、电子图书在提交订单后一般半小时内处理完成,最晚48小时内处理完成。(非工作日购买会延迟)

3、所有的电子图书都是原书直接扫描方式制作而成。

Introduction 1

Shifting from C to C++ 13

Item 1:Prefer const and inline to #define. 13

Item 2:Prefer<iostream>to<stdio.h>. 17

Item 3:Prefer new and delete to malloc and free. 19

Item 4:Prefer C++-style comments. 21

Memory Management 22

Item 5:Use the same form in corresponding uses of new and delete. 23

Item 6:Use delete on pointer members in destructors. 24

Item 7:Be prepared for out-of-memory conditions. 25

Item 8:Adhere to convention when writing operator new and operator delete. 33

Item 9:Avoid hiding the normal form of new. 37

Item 10:Write operator delete if you write operator new. 39

Constructors,Destructors,and Assignment Operators 49

Item 11:Declare a copy constructor and an assignment operator for classes with dynamically allocated memory. 49

Item 12:Prefer initialization to assignment in constructors. 52

Item 13:List members in an initialization list in the order in which they are declared. 57

Item 14:Make sure base classes have virtual destructors. 59

Item 15:Have operator=return a reference to ?this. 64

Item 16:Assign to all data members in operator=. 68

Item 17:Check for assignment to self in operator=. 71

Classes and Functions:Design and Declaration 77

Item 18:Strive for class interfaces that are complete and minimal. 79

Item 19:Differentiate among member functions,non-member functions,and friend functions. 84

Item 20:Avoid data members in the public interface. 89

Item 21:Use const whenever possible. 91

Item 22:Prefer pass-by-reference to pass-by-value. 98

Item 23:Don t try to return a reference when you must return an object. 101

Item 24:Choose carefully between function overloading and parameter defaulting. 106

Item 25:Avoid overloading on a pointer and a numerical type. 109

Item 26:Guard against potential ambiguity. 113

Item 27:Explicitly disallow use of implicitly generated member functions you don t want. 116

Item 28:Partition the global namespace. 117

Classes and Functions:Implementation 123

Item 29:Avoid returning handles to internal data. 123

Item 30:Avoid member functions that return non-const pointers or references to members less accessible than themselves. 129

Item 31:Never return a reference to a local object or to a dereferenced pointer initialized by new within the function. 131

Item 32:Postpone variable definitions as long as possible. 135

Item 33:Use inlining judiciously. 137

Item 34:Minimize compilation dependencies between files. 143

Inheritance and Object-Oriented Design 153

Item 35:Make sure public inheritance models isa . 154

Item 36:Differentiate between inheritance of interface and inheritance of implementation. 161

Item 37:Never redefine an inherited nonvirtual function. 169

Item 38:Never redefine an inherited default parameter value. 171

Item 39:Avoid casts down the inheritance hierarchy. 173

Item 40:Model has-a or is-implemented-in-terms-of through layering. 182

Item 41:Differentiate between inheritance and templates. 185

Item 42:Use private inheritance judiciously. 189

Item 43:Use multiple inheritance judiciously. 194

Item 44:Say what you mean;understand what you re saying. 210

Miscellany 212

Item 45:Know what functions C++ silently writes and calls. 212

Item 46:Prefer compile-time and link-time errors to runtime errors. 216

Item 47:Ensure that non-local static objects are initialized before they re used. 219

Item 48:Pay attention to compiler warnings. 223

Item 49:Familiarize yourself with the standard library. 224

Item 50:Improve your understanding of C++. 232

Afterword 237

Index 239

购买PDF格式(10分)
返回顶部