More Effective C++ by Scott Meyers (PDF)

More Effective C++

Scott Meyers
Release at: 1996
Pages: 337
1st Edition/35 New Ways to Improve
Your Programs and Designs
File Size: 9 MB/2 MB
File Type: pdf/epub
Language: English

Description of More Effective C++

More Effective C++ written by Scott Meyers is a great programming book for C++ Programming studies available in ebook (PDF/EPUB) free download. This More Effective C++ book for C++ programmers. C++ programming has nevertheless emerged as the language of choice for systems programming on nearly all major computing platforms. Individuals and companies with challenging programming problems increasingly embrace the language, & the question faced by those who do not use C++ is often when they will start, not if. Standardization of C++ is complete, the breadth and scope of the accompanying library which both subsumes and dwarfs that of C make it possible to write rich, complex programs without sacrificing portability or implementing common data structures and algorithms from scratch.

C++ compilers continue to proliferate, the features they offer continue to expand, & the quality of the code they generate continues to improve. Environments and tools for C++ development grow ever more abundant, robust and powerful. Commercial libraries all and obviate the need to write code in many application areas. As the language has matured & our experience with it has increased, our needs for information about it have changed. In 1990, people wanted to know what C++ programming. By 1992, they wanted to know how to make it work and now C++ programmers ask higher-level questions: How can I design my software so it will adapt to future demands?

How can I improve my coding efficiency without compromising its correctness or making it harder to use? How can I implement sophisticated functionality not supported directly by the language? In this More Effective C++ book, I answer these questions and many others like them. This More Effective C++ book shows how to implement and design C++ software that is more effective: more likely to behave correctly; more robust in the face of exceptions; more efficient; more portable; adapts to change more gracefully; makes better use of language features; works better in a mixed-language environment; is easier to use correctly; is harder to use incorrectly. In short, software that’s just better. You can also get Effective STL.

Content of More Effective C++

Introduction 1

CHAPTER 1: Basics 9

1 ➤ Distinguish between pointers and references. 9
2 ➤ Prefer C++-style casts. 12
3 ➤ Never treat arrays polymorphically. 16
4 ➤ Avoid gratuitous default constructors. 19

CHAPTER 2: Operators 24

5 ➤ Be wary of user-defined conversion functions. 24
6 ➤ Distinguish between prefix and postfix forms of increment and decrement operators. 31
7 ➤ Never overload  && ,  || , or  , . 35
8 ➤ Understand the different meanings of new and delete. 38

CHAPTER 3: Exceptions 44

9 ➤ Use destructors to prevent resource leaks. 45
10 ➤ Prevent resource leaks in constructors. 50
11 ➤ Prevent exceptions from leaving destructors. 58
12 ➤ Understand how throwing an exception differs from passing a parameter or calling a virtual function. 61
13 ➤ Catch exceptions by reference. 68
14 ➤ Use exception specifications judiciously. 72
15 ➤ Understand the costs of exception handling. 78

CHAPTER 4: Efficiency 81

16 ➤ Remember the 80-20 rule. 82
17 ➤ Consider using lazy evaluation. 85
18 ➤ Amortize the cost of expected computations. 93
19 ➤ Understand the origin of temporary objects. 98
20 ➤ Facilitate the return value optimization. 101
21 ➤ Overload to avoid implicit type conversions. 105
22 ➤ Consider using op= instead of stand-alone op. 107
23 ➤ Consider alternative libraries. 110
24 ➤ Understand the costs of virtual functions, multiple inheritance, virtual base classes, and RTTI. 113

CHAPTER 5: Techniques 123

25 ➤ Virtualizing constructors and non-member functions. 123
26 ➤ Limiting the number of objects of a class. 130
27 ➤ Requiring or prohibiting heap-based objects. 145
28 ➤ Smart pointers. 159
29 ➤ Reference counting. 183
30 ➤ Proxy classes. 213
31 ➤ Making functions virtual with respect to more than one object. 228

CHAPTER 6: Miscellany 252

32 ➤ Program in the future tense. 252
33 ➤ Make non-leaf classes abstract. 258
34 ➤ Understand how to combine C++ and C in the same program. 270
35 ➤ Familiarize yourself with the language standard. 277

Recommended Reading 285

An  auto_ptr Implementation 291

General Index 295

Index of Example Classes, Functions, and Templates 313

Also Available

Vim Like a Pro by Tim Ottinger

Effective STL by Scott Meyers

Effective C++ by Scott Meyers 3rd Edition

Effective Modern C++ by Scott Meyers

Introduction to Algorithms by TH Cormen, CE Leiserson RL Rivest & C Stein 3rd Edition
Similar Books


  1. Services quality as well as the relevance of the ads for the audience and arrange your own advert teams correctly.
    branding design firm

  2. The team has received positive remarks for their innovation, pragmatism, and ability to produce excellent results in each step of the process.
    brand strategy firm


John Academy