Professional C++ 5th Edition by Marc Gregoire – Ebook PDF Instant Download/DeliveryISBN: 1119695457, 9781119695455
Full download Professional C++ 5th Edition after payment.
Product details:
ISBN-10 : 1119695457
ISBN-13 : 9781119695455
Author : Marc Gregoire
Improve your existing C++ competencies quickly and efficiently with this advanced volume
Professional C++, 5th Edition raises the bar for advanced programming manuals. Complete with a comprehensive overview of the new capabilities of C++20, each feature of the newly updated programming language is explained in detail and with examples. Case studies that include extensive, working code round out the already impressive educational material found within.
Professional C++ 5th Table of contents:
PART I: Introduction to Professional C++
1 A Crash Course in C++ and the Standard Library
C++ CRASH COURSE
YOUR FIRST BIGGER C++ PROGRAM
SUMMARY
EXERCISES
Notes
2 Working with Strings and String Views
DYNAMIC STRINGS
STRING FORMATTING
SUMMARY
EXERCISES
Notes
3 Coding with Style
THE IMPORTANCE OF LOOKING GOOD
DOCUMENTING YOUR CODE
DECOMPOSITION
NAMING
USING LANGUAGE FEATURES WITH STYLE
FORMATTING
STYLISTIC CHALLENGES
SUMMARY
EXERCISES
Notes
PART II: Professional C++ Software Design
4 Designing Professional C++ Programs
WHAT IS PROGRAMMING DESIGN?
THE IMPORTANCE OF PROGRAMMING DESIGN
DESIGNING FOR C++
TWO RULES FOR YOUR OWN C++ DESIGNS
REUSING EXISTING CODE
DESIGNING A CHESS PROGRAM
SUMMARY
EXERCISES
5 Designing with Objects
AM I THINKING PROCEDURALLY?
THE OBJECT-ORIENTED PHILOSOPHY
LIVING IN A WORLD OF CLASSES
CLASS RELATIONSHIPS
SUMMARY
EXERCISES
6 Designing for Reuse
THE REUSE PHILOSOPHY
HOW TO DESIGN REUSABLE CODE
SUMMARY
EXERCISES
PART III: C++ Coding the Professional Way
7 Memory Management
WORKING WITH DYNAMIC MEMORY
ARRAY-POINTER DUALITY
LOW-LEVEL MEMORY OPERATIONS
COMMON MEMORY PITFALLS
SMART POINTERS
SUMMARY
EXERCISES
Notes
8 Gaining Proficiency with Classes and Objects
INTRODUCING THE SPREADSHEET EXAMPLE
WRITING CLASSES
UNDERSTANDING OBJECT LIFE CYCLES
SUMMARY
EXERCISES
Notes
9 Mastering Classes and Objects
FRIENDS
DYNAMIC MEMORY ALLOCATION IN OBJECTS
MORE ABOUT METHODS
DIFFERENT KINDS OF DATA MEMBERS
NESTED CLASSES
ENUMERATED TYPES INSIDE CLASSES
OPERATOR OVERLOADING
BUILDING STABLE INTERFACES
SUMMARY
EXERCISES
10 Discovering Inheritance Techniques
BUILDING CLASSES WITH INHERITANCE
INHERITANCE FOR REUSE
RESPECT YOUR PARENTS
INHERITANCE FOR POLYMORPHISM
MULTIPLE INHERITANCE
INTERESTING AND OBSCURE INHERITANCE ISSUES
CASTS
SUMMARY
EXERCISES
11 Odds and Ends
MODULES
HEADER FILES
FEATURE TEST MACROS FOR CORE LANGUAGE FEATURES
THE STATIC KEYWORD
C UTILITIES
SUMMARY
EXERCISES
12 Writing Generic Code with Templates
OVERVIEW OF TEMPLATES
CLASS TEMPLATES
FUNCTION TEMPLATES
VARIABLE TEMPLATES
CONCEPTS
SUMMARY
EXERCISES
13 Demystifying C++ I/O
USING STREAMS
STRING STREAMS
FILE STREAMS
BIDIRECTIONAL I/O
FILESYSTEM SUPPORT LIBRARY
SUMMARY
EXERCISES
14 Handling Errors
ERRORS AND EXCEPTIONS
EXCEPTION MECHANICS
EXCEPTIONS AND POLYMORPHISM
RETHROWING EXCEPTIONS
STACK UNWINDING AND CLEANUP
COMMON ERROR-HANDLING ISSUES
SUMMARY
EXERCISES
15 Overloading C++ Operators
OVERVIEW OF OPERATOR OVERLOADING
OVERLOADING THE ARITHMETIC OPERATORS
OVERLOADING THE BITWISE AND BINARY LOGICAL OPERATORS
OVERLOADING THE INSERTION AND EXTRACTION OPERATORS
OVERLOADING THE SUBSCRIPTING OPERATOR
OVERLOADING THE FUNCTION CALL OPERATOR
OVERLOADING THE DEREFERENCING OPERATORS
WRITING CONVERSION OPERATORS
OVERLOADING THE MEMORY ALLOCATION AND DEALLOCATION OPERATORS
OVERLOADING USER-DEFINED LITERAL OPERATORS
SUMMARY
EXERCISES
16 Overview of the C++ Standard Library
CODING PRINCIPLES
OVERVIEW OF THE C++ STANDARD LIBRARY
SUMMARY
EXERCISES
17 Understanding Iterators and the Ranges Library
ITERATORS
STREAM ITERATORS
ITERATOR ADAPTERS
RANGES
SUMMARY
EXERCISES
18 Standard Library Containers
CONTAINERS OVERVIEW
SEQUENTIAL CONTAINERS
CONTAINER ADAPTERS
ORDERED ASSOCIATIVE CONTAINERS
UNORDERED ASSOCIATIVE CONTAINERS OR HASH TABLES
OTHER CONTAINERS
SUMMARY
EXERCISES
19 Function Pointers, Function Objects, and Lambda Expressions
FUNCTION POINTERS
POINTERS TO METHODS (AND DATA MEMBERS)
std::function
FUNCTION OBJECTS
LAMBDA EXPRESSIONS
INVOKERS
SUMMARY
EXERCISES
20 Mastering Standard Library Algorithms
OVERVIEW OF ALGORITHMS
ALGORITHM DETAILS
SUMMARY
EXERCISES
21 String Localization and Regular Expressions
LOCALIZATION
REGULAR EXPRESSIONS
SUMMARY
EXERCISES
22 Date and Time Utilities
COMPILE-TIME RATIONAL NUMBERS
DURATION
CLOCK
TIME POINT
DATE
TIME ZONE
SUMMARY
EXERCISES
23 Random Number Facilities
C-STYLE RANDOM NUMBER GENERATION
RANDOM NUMBER ENGINES
RANDOM NUMBER ENGINE ADAPTERS
PREDEFINED ENGINES AND ENGINE ADAPTERS
GENERATING RANDOM NUMBERS
RANDOM NUMBER DISTRIBUTIONS
SUMMARY
EXERCISES
24 Additional Library Utilities
VOCABULARY TYPES
TUPLES
SUMMARY
EXERCISES
PART IV: Mastering Advanced Features of C++
25 Customizing and Extending the Standard Library
ALLOCATORS
EXTENDING THE STANDARD LIBRARY
SUMMARY
EXERCISES
Notes
26 Advanced Templates
MORE ABOUT TEMPLATE PARAMETERS
CLASS TEMPLATE PARTIAL SPECIALIZATION
EMULATING FUNCTION PARTIAL SPECIALIZATION WITH OVERLOADING
TEMPLATE RECURSION
VARIADIC TEMPLATES
METAPROGRAMMING
SUMMARY
EXERCISES
27 Multithreaded Programming with C++
INTRODUCTION
THREADS
ATOMIC OPERATIONS LIBRARY
MUTUAL EXCLUSION
CONDITION VARIABLES
LATCHES
BARRIERS
SEMAPHORES
FUTURES
EXAMPLE: MULTITHREADED LOGGER CLASS
THREAD POOLS
COROUTINES
THREADING DESIGN AND BEST PRACTICES
SUMMARY
EXERCISES
PART V: C++ Software Engineering
28 Maximizing Software Engineering Methods
THE NEED FOR PROCESS
SOFTWARE LIFE CYCLE MODELS
SOFTWARE ENGINEERING METHODOLOGIES
BUILDING YOUR OWN PROCESS AND METHODOLOGY
SOURCE CODE CONTROL
SUMMARY
EXERCISES
29 Writing Efficient C++
OVERVIEW OF PERFORMANCE AND EFFICIENCY
LANGUAGE-LEVEL EFFICIENCY
DESIGN-LEVEL EFFICIENCY
PROFILING
SUMMARY
EXERCISES
30 Becoming Adept at Testing
QUALITY CONTROL
UNIT TESTING
FUZZ TESTING
HIGHER-LEVEL TESTING
TIPS FOR SUCCESSFUL TESTING
SUMMARY
EXERCISES
31 Conquering Debugging
THE FUNDAMENTAL LAW OF DEBUGGING
BUG TAXONOMIES
AVOIDING BUGS
PLANNING FOR BUGS
DEBUGGING TECHNIQUES
SUMMARY
EXERCISES
32 Incorporating Design Techniques and Frameworks
“I CAN NEVER REMEMBER HOW TO…”
THERE MUST BE A BETTER WAY
OBJECT-ORIENTED FRAMEWORKS
SUMMARY
EXERCISES
33 Applying Design Patterns
DEPENDENCY INJECTION
THE ABSTRACT FACTORY PATTERN
THE FACTORY METHOD PATTERN
THE ADAPTER PATTERN
THE PROXY PATTERN
THE ITERATOR PATTERN
THE OBSERVER PATTERN
THE DECORATOR PATTERN
THE CHAIN OF RESPONSIBILITY PATTERN
THE SINGLETON PATTERN
SUMMARY
EXERCISES
34 Developing Cross-Platform and Cross-Language Applications
CROSS-PLATFORM DEVELOPMENT
CROSS-LANGUAGE DEVELOPMENT
SUMMARY
EXERCISES
PART VI: Appendices
A C++ Interviews
CHAPTER 1: A CRASH COURSE IN C++ AND THE STANDARD LIBRARY
CHAPTERS 2 AND 21: WORKING WITH STRINGS AND STRING VIEWS, STRING LOCALIZATION AND REGULAR EXPRESSIONS
CHAPTER 3: CODING WITH STYLE
CHAPTER 4: DESIGNING PROFESSIONAL C++ PROGRAMS
CHAPTER 5: DESIGNING WITH OBJECTS
CHAPTER 6: DESIGNING FOR REUSE
CHAPTER 7: MEMORY MANAGEMENT
CHAPTERS 8 AND 9: GAINING PROFICIENCY WITH CLASSES AND OBJECTS, AND MASTERING CLASSES AND OBJECTS
CHAPTER 10: DISCOVERING INHERITANCE TECHNIQUES
CHAPTER 11: ODDS AND ENDS
CHAPTERS 12 AND 26: WRITING GENERIC CODE WITH TEMPLATES, AND ADVANCED TEMPLATES
CHAPTER 13: DEMYSTIFYING C++ I/O
CHAPTER 14: HANDLING ERRORS
CHAPTER 15: OVERLOADING C++ OPERATORS
CHAPTERS 16–20 AND 25: THE STANDARD LIBRARY
CHAPTER 22: DATE AND TIME UTILITIES
CHAPTER 23: RANDOM NUMBER FACILITIES
CHAPTER 24: ADDITIONAL LIBRARY UTILITIES
CHAPTER 27: MULTITHREADED PROGRAMMING WITH C++
CHAPTER 28: MAXIMIZING SOFTWARE ENGINEERING METHODS
CHAPTER 29: WRITING EFFICIENT C++
CHAPTER 30: BECOMING ADEPT AT TESTING
CHAPTER 31: CONQUERING DEBUGGING
CHAPTER 32: INCORPORATING DESIGN TECHNIQUES AND FRAMEWORKS
CHAPTER 33: APPLYING DESIGN PATTERNS
CHAPTER 34: DEVELOPING CROSS-PLATFORM AND CROSS-LANGUAGE APPLICATIONS
People also search for Professional C++ 5th:
professional carpet cleaning
professional cleaning services
professional carpet cleaner
professional carpet cleaning near me
professional couch cleaning
Tags: Professional, Marc Gregoire, competencies, programming manuals