Master complex C++ programming with this helpful, in-depthresource From game programming to major commercial software applications,C++ is the language of choice. It is also one of the most difficultprogramming languages to master. While most competing books aregeared toward beginners, Professional C++, Third Edition,shows experienced developers how to master the latest release ofC++, explaining little known features with detailed code examplesusers can plug into their own codes. More advanced languagefeatures and programming techniques are presented in this newestedition of the book, whose earlier editions have helped thousandsof coders get up to speed with C++. Become familiar with the fullcapabilities offered by C++, and learn the best ways to design andbuild applications to solve real-world problems. Professional C++, Third Edition has been substantiallyrevised and revamped from previous editions, and fully covers thelatest (2014) C++ standard. Discover how to navigate thesignificant changes to the core language features and syntax, andextensions to the C++ Standard Library and its templates. Thispractical guide details many poorly understood elements of C++ andhighlights pitfalls to avoid. * Best practices for programming style, testing, anddebugging * Working code that readers can plug into their own apps * In-depth case studies with working code * Tips, tricks, and workarounds with an emphasis on goodprogramming style Move forward with this comprehensive, revamped guide toprofessional coding with C++.
Autorentext
Marc Gregoire is a software engineer and developer of C/C++ applications for both Windows and Linux. He is a Microsoft Visual C++ MVP, the founder of the Belgian C++ users group, and is currently working on 3D laser scanning software for Nikon Metrology. He previously worked on critical 2G and 3G telecom software for Siemens and Nokia Siemens Networks. Marc maintains a blog at nuonsoft.com/blog.
Wrox Professional guides are planned and written by working programmers to meet the real-world needs of programmers, developers, and IT professionals. Focused and relevant, they address the issues technology professionals face every day. They provide examples, practical solutions, and expert education in new technologies, all designed to help programmers do a better job.
Klappentext
Master the latest release of the C++ language, C++14
This book is a practical, code-intensive guide to designing and building C++ applications, fully updated for the C++14 release. The lessons emphasize good programming style, and how to think in C++ to design effective solutions that maximize the language's capabilities. Drill down into the language to understand the more complex elements of the feature set, and learn the tricks and techniques that steer you away from common pitfalls. The new C++14 information is highlighted for quick reference, helping you get up to speed on the major changes that impact application building.
Professional C++ Third Edition:
- Learn by example, working with challenging, real-world program segments available to download
- Study detailed case examples with extensive working code tested on Windows and Linux
- Discover the tips, tricks, and workarounds that lead to good programming style, including best practices for debugging
- Work with C++14's new language features, including function return type deduction, binary literals, generic lambdas, and lambda capture expressions
- Get up to date with the latest standard library features, like make_unique, transparent function objects, tuple addressing via type, and shared mutex and lock classes
Programmer Forums
Join our Programmer to Programmer forums to ask and answer programming questions about this book, join discussions on the hottest topics in the industry, and connect with fellow programmers from around the world.
Code Downloads
Take advantage of free code samples from this book, as well as code samples from hundreds of other books, all ready to use.
Read More
Find articles, e-books, sample chapters, and tables of contents for hundreds of books, and more reference resources on programming topics that matter to you.
Zusammenfassung
Master complex C++ programming with this helpful, in-depth resource
From game programming to major commercial software applications, C++ is the language of choice. It is also one of the most difficult programming languages to master. While most competing books are geared toward beginners, Professional C++, Third Edition, shows experienced developers how to master the latest release of C++, explaining little known features with detailed code examples users can plug into their own codes. More advanced language features and programming techniques are presented in this newest edition of the book, whose earlier editions have helped thousands of coders get up to speed with C++. Become familiar with the full capabilities offered by C++, and learn the best ways to design and build applications to solve real-world problems.
Professional C++, Third Edition has been substantially revised and revamped from previous editions, and fully covers the latest (2014) C++ standard. Discover how to navigate the significant changes to the core language features and syntax, and extensions to the C++ Standard Library and its templates. This practical guide details many poorly understood elements of C++ and highlights pitfalls to avoid.
- Best practices for programming style, testing, and debugging
- Working code that readers can plug into their own apps
- In-depth case studies with working code
- Tips, tricks, and workarounds with an emphasis on good programming style
Move forward with this comprehensive, revamped guide to professional coding with C++.
Inhalt
INTRODUCTION xli
Part I: INTRODUCTION TO PROFESSIONAL C++
CHAPTER 1: A CRA SH COURSE IN C++ AND THE STL 3
The Basics of C++ 4
Diving Deeper into C++ 25
C++ as an Object-Oriented Language 34
Summary 46
CHAPTER 2: WORKING WITH STRINGS 47
Dynamic Strings 47
Summary 55
CHAPTER 3: CODING WITH STYLE 57
Naming 68
Formatting 72
Summary 75
Part II: PROFESSIONAL C++ SOFTWAR E DESIGN
CHAPTER 4: DESIGNING PROFESSIONAL C++ PROGRA MS 79
What Is Programming Design? 80
The Importance of Programming Design 80
Designing for C++ 82
Two Rules for C++ Design 83
Reusing Code 87
Deciding Whether or Not to Use the STL 98
Designing with Patterns and Techniques 98
Designing a Chess Program 99
Summary 105
CHAPTER 5: DESIGNING WITH OBJECTS 107
Am I Thinking Procedurally? 108
The Object-Oriented Philosophy 108
Living in a World of Objects 111
Abstraction 122
Summary 126
CHAPTER 6: DESIGNING FOR REUSE 127
The Reuse Philosophy 127
How to Design Reusable Code 128
Summary 140
Part III: CODING THE PROFESSIONAL WAY
CHAPTER 7: GAINING PROFICIENCY WITH CLASSES AND OBJECTS 143
Introducing the Spreadsheet Example 144
Writing Classes 144
Summary 175
CHAPTER 8: MASTERING CLASSES AND OBJECTS 177
Dynamic Memory Allocation in Objects 178
Different Kinds of Data Members 188
More about Methods 193
Nested Classes 199
Enumerated Types Inside Classes 201
Friends 202
Operator Overloading 203
Summary 215
CHAPTER 9: DISCOVERING INHERITANCE TECHNIQUES 217
Building Classes with Inheritance 218
Multiple Inher…