图书介绍

Effective C++影印本pdf电子书版本下载

Effective C++影印本
  • (美)迈耶斯著 著
  • 出版社: 北京:中国电力出版社
  • ISBN:7508314980
  • 出版时间:2003
  • 标注页数:258页
  • 文件大小:12MB
  • 文件页数:277页
  • 主题词:C语言-程序设计-英文

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快] 温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页 直链下载[便捷但速度慢]   [在线试读本书]   [在线获取解压码]

下载说明

Effective C++影印本PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如 BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

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

精品推荐