وبلاگ بلیان

C++ common knowledge : essential intermediate programing = C++必知必会 / monograph

معرفی کتاب «C++ common knowledge : essential intermediate programing = C++必知必会 / monograph» نوشتهٔ Dewhurst, Stephen C، منتشرشده توسط نشر Addison-Wesley Professional; Posts & Telecom Press در سال 2005. این کتاب در فرمت pdf، زبان انگلیسی ارائه شده است.

Most C++ programmers are not experts, and they often need preliminary education in various C++ language features, coding techniques, and design patterns before they can be fully productive. What they're missing is the common knowledge among experienced C++ programmers, what it takes to write production-quality programs--and that common knowledge is the topic of this book. Contents......Page 9 Preface......Page 13 Acknowledgments......Page 19 A Note on Typographical Conventions......Page 21 Item 1 Data Abstraction......Page 23 Item 2 Polymorphism......Page 25 Item 3 Design Patterns......Page 29 Item 4 The Standard Template Library......Page 33 Item 5 References Are Aliases, Not Pointers......Page 35 Item 6 Array Formal Arguments......Page 39 Item 7 Const Pointers and Pointers to Const......Page 43 Item 8 Pointers to Pointers......Page 47 Item 9 New Cast Operators......Page 51 Item 10 Meaning of a Const Member Function......Page 55 Item 11 The Compiler Puts Stuff in Classes......Page 59 Item 12 Assignment and Initialization Are Different......Page 63 Item 13 Copy Operations......Page 67 Item 14 Function Pointers......Page 71 Item 15 Pointers to Class Members Are Not Pointers......Page 75 Item 16 Pointers to Member Functions Are Not Pointers......Page 79 Item 17 Dealing with Function and Array Declarators......Page 83 Item 18 Function Objects......Page 85 Item 19 Commands and Hollywood......Page 89 Item 20 STL Function Objects......Page 93 Item 21 Overloading and Overriding Are Different......Page 97 Item 22 Template Method......Page 99 Item 23 Namespaces......Page 103 Item 24 Member Function Lookup......Page 109 Item 25 Argument Dependent Lookup......Page 111 Item 26 Operator Function Lookup......Page 113 Item 27 Capability Queries......Page 115 Item 28 Meaning of Pointer Comparison......Page 119 Item 29 Virtual Constructors and Prototype......Page 121 Item 30 Factory Method......Page 125 Item 31 Covariant Return Types......Page 129 Item 32 Preventing Copying......Page 133 Item 33 Manufacturing Abstract Bases......Page 135 Item 34 Restricting Heap Allocation......Page 139 Item 35 Placement New......Page 141 Item 36 Class-Specific Memory Management......Page 145 Item 37 Array Allocation......Page 149 Item 38 Exception Safety Axioms......Page 153 Item 39 Exception Safe Functions......Page 157 Item 40 RAII......Page 161 Item 41 New, Constructors, and Exceptions......Page 165 Item 42 Smart Pointers......Page 167 Item 43 auto_ptr Is Unusual......Page 169 Item 44 Pointer Arithmetic......Page 171 Item 45 Template Terminology......Page 175 Item 46 Class Template Explicit Specialization......Page 177 Item 47 Template Partial Specialization......Page 183 Item 48 Class Template Member Specialization......Page 187 Item 49 Disambiguating with Typename......Page 191 Item 50 Member Templates......Page 195 Item 51 Disambiguating with Template......Page 201 Item 52 Specializing for Type Information......Page 205 Item 53 Embedded Type Information......Page 211 Item 54 Traits......Page 215 Item 55 Template Template Parameters......Page 221 Item 56 Policies......Page 227 Item 57 Template Argument Deduction......Page 231 Item 58 Overloading Function Templates......Page 235 Item 59 SFINAE......Page 239 Item 60 Generic Algorithms......Page 243 Item 61 You Instantiate What You Use......Page 247 Item 62 Include Guards......Page 251 Item 63 Optional Keywords......Page 253 Bibliography......Page 257 B......Page 259 C......Page 260 F......Page 261 I......Page 262 O......Page 263 P......Page 264 T......Page 265 Z......Page 266 C......Page 267 E......Page 268 H......Page 269 P......Page 270 T......Page 271 Z......Page 272 Contents 9 Preface 13 Acknowledgments 19 A Note on Typographical Conventions 21 Item 1 Data Abstraction 23 Item 2 Polymorphism 25 Item 3 Design Patterns 29 Item 4 The Standard Template Library 33 Item 5 References Are Aliases, Not Pointers 35 Item 6 Array Formal Arguments 39 Item 7 Const Pointers and Pointers to Const 43 Item 8 Pointers to Pointers 47 Item 9 New Cast Operators 51 Item 10 Meaning of a Const Member Function 55 Item 11 The Compiler Puts Stuff in Classes 59 Item 12 Assignment and Initialization Are Different 63 Item 13 Copy Operations 67 Item 14 Function Pointers 71 Item 15 Pointers to Class Members Are Not Pointers 75 Item 16 Pointers to Member Functions Are Not Pointers 79 Item 17 Dealing with Function and Array Declarators 83 Item 18 Function Objects 85 Item 19 Commands and Hollywood 89 Item 20 STL Function Objects 93 Item 21 Overloading and Overriding Are Different 97 Item 22 Template Method 99 Item 23 Namespaces 103 Item 24 Member Function Lookup 109 Item 25 Argument Dependent Lookup 111 Item 26 Operator Function Lookup 113 Item 27 Capability Queries 115 Item 28 Meaning of Pointer Comparison 119 Item 29 Virtual Constructors and Prototype 121 Item 30 Factory Method 125 Item 31 Covariant Return Types 129 Item 32 Preventing Copying 133 Item 33 Manufacturing Abstract Bases 135 Item 34 Restricting Heap Allocation 139 Item 35 Placement New 141 Item 36 Class-Specific Memory Management 145 Item 37 Array Allocation 149 Item 38 Exception Safety Axioms 153 Item 39 Exception Safe Functions 157 Item 40 RAII 161 Item 41 New, Constructors, and Exceptions 165 Item 42 Smart Pointers 167 Item 43 auto_ptr Is Unusual 169 Item 44 Pointer Arithmetic 171 Item 45 Template Terminology 175 Item 46 Class Template Explicit Specialization 177 Item 47 Template Partial Specialization 183 Item 48 Class Template Member Specialization 187 Item 49 Disambiguating with Typename 191 Item 50 Member Templates 195 Item 51 Disambiguating with Template 201 Item 52 Specializing for Type Information 205 Item 53 Embedded Type Information 211 Item 54 Traits 215 Item 55 Template Template Parameters 221 Item 56 Policies 227 Item 57 Template Argument Deduction 231 Item 58 Overloading Function Templates 235 Item 59 SFINAE 239 Item 60 Generic Algorithms 243 Item 61 You Instantiate What You Use 247 Item 62 Include Guards 251 Item 63 Optional Keywords 253 Bibliography 257 Index 259 A 259 B 259 C 260 D 261 E 261 F 261 G 262 H 262 I 262 J 263 K 263 L 263 M 263 N 263 O 263 P 264 Q 265 R 265 S 265 T 265 U 266 V 266 W 266 Z 266 Index of Code Examples 267 A 267 B 267 C 267 D 268 E 268 F 269 G 269 H 269 I 270 M 270 N 270 O 270 P 270 R 271 S 271 T 271 W 272 X 272 Z 272 What Every Professional C++ Programmer Needs to Know—Pared to Its Essentials So It Can Be Efficiently and Accurately Absorbed C++ is a large, complex language, and learning it is never entirely easy. But some concepts and techniques must be thoroughly mastered if programmers are ever to do professional-quality work. This book cuts through the technical details to reveal what is commonly understood to be absolutely essential. In one slim volume, Steve Dewhurst distills what he and other experienced managers, trainers, and authors have found to be the most critical knowledge required for successful C++ programming. It doesn't matter where or when you first learned C++. Before you take another step, use this book as your guide to make sure you've got it right! This book is for you if You're no “dummy,” and you need to get quickly up to speed in intermediate to advanced C++ You've had some experience in C++ programming, but reading intermediate and advanced C++ books is slow-going You've had an introductory C++ course, but you've found that you still can't follow your colleagues when they're describing their C++ designs and code You're an experienced C or Java programmer, but you don't yet have the experience to develop nuanced C++ code and designs You're a C++ expert, and you're looking for an alternative to answering the same questions from your less-experienced colleagues over and over again C++ Common Knowledge covers essential but commonly misunderstood topics in C++ programming and design while filtering out needless complexity in the discussion of each topic. What remains is a clear distillation of the essentials required for production C++ programming, presented in the author's trademark incisive, engaging style. C++ Common Knowledge Covers Essential But Commonly Misunderstood Topics In C++ Programming And Design While Filtering Out Needless Complexity In The Discussion Of Each Topic. What Remains Is A Clear Distillation Of The Essentials Required For Production C++ Programming, Presented In The Author's Trademark Incisive, Engaging Style.--jacket. Chapter 2 Syntax 35 -- Chapter 3 The Preprocessor 61 -- Chapter 4 Conversions 75 -- Chapter 5 Initialization 125 -- Chapter 6 Memory And Resource Management 167 -- Chapter 7 Polymorphism 199 -- Chapter 8 Class Design 241 -- Chapter 9 Hierarchy Design 271. Stephen C. Dewhurst. Includes Bibliographical References (p. 235) And Index. C++ is a large, complex language, and learning it is never easy. But some concepts and techniques must be thoroughly mastered if programmers are ever to do professional-quality work. This book presents the technical details essential for C++ programming. It is intended for people who are using C++.
دانلود کتاب C++ common knowledge : essential intermediate programing = C++必知必会 / monograph