C++ How to Program: An Objects-Natural Approach is a code-intensive, modular introduction to C++ programming. The Deitel live-code approach presents concepts using full working programs rather than code snippets so that you can immediately start to run programs as you read. Interesting, entertaining and challenging examples, exercises and projects help you see how what you're learning applies to real-world scenarios.
The 11th Edition presents new features of C++ 20 and even more hands-on application opportunities. Hundreds of new self-checks let you test your code and understanding of key concepts. New case studies and exercises focus on security, data science, ethics and more.
Table of Contents:
PART 1: C++ 20 Fundamentals Quickstart and Procedural Programming - Intro: Test-Driving Popular, Free C++ Software
- Intro to C++ 20 Programming
- Control Statements: Part 1
- Control Statements: Part 2
- Functions and an Intro to Function Templates
PART 2: Containers, C++ 20 Ranges, Pointers, Strings and Files - arrays, vectors, Ranges and Functional-Style Programming
- (Downplaying) Pointers in Modern C++
- strings, string_views, Text files, CSV Files and Regex
PART 3: Modern Object-Oriented Programming and Exceptions - Custom Classes
- OOP: Inheritance and Runtime Polymorphism
- Operator Overloading, Copy/Move Semantics, Smart Pointers and RAII
- Exceptions and a Look Forward to Contracts
PART 4: Generic Programming: Templates, Concepts and Template Metaprogramming - Standard Library Containers and Iterators
- Standard Library Algorithms and C++ 20 Ranges and Views
- Templates, C++ 20 Concepts and Metaprogramming
PART 5: Advanced Topics: Modules, Parallel Algorithms, Concurrency and Coroutines - C++ 20 Modules: Large-Scale Development
- Parallel Algorithms and Concurrency: A High-Level View
- C++ 20 Coroutines
PART 6: Miscellaneous Topics - Stream I/O and C++ 20 Text Formatting
- Other Topics and a Look Toward C++ 23 and C++ 26
- Computer Science Thinking: Searching, Sorting and Big O
About the Author :
About our authors Paul J. Deitel, CEO and Chief Technical Officer of Deitel & Associates, Inc., is an MIT graduate with 43 years in computing. He is one of the world's most experienced programming-languages trainers, having taught professional courses to software developers since 1992. He has delivered hundreds of programming courses to academic, industry, government and military clients of Deitel & Associates, Inc. internationally, including UCLA, SLB (formerly Schlumberger), Cisco, IBM, Siemens, Sun Microsystems (now Oracle), Dell, Fidelity, NASA at the Kennedy Space Center, the National Severe Storm Laboratory, White Sands Missile Range, Rogue Wave Software, Boeing, Puma, iRobot and many more.
Dr. Harvey M. Deitel, Chairman and Chief Strategy Officer of Deitel & Associates, Inc., has 62 years of experience in computing. Dr. Deitel earned B.S. and M.S. degrees in Electrical Engineering from MIT and a Ph.D. in Mathematics from Boston University; he studied computing in each of these programs before they spun off Computer Science departments. He has extensive college and professional teaching experience, including earning tenure and serving as the Chairman of the Computer Science Department at Boston College before founding Deitel & Associates in 1991 with his son, Paul. The Deitels' publications have earned international recognition, with more than 100 translations published in Japanese, German, Russian, Spanish, French, Polish, Italian, Simplified Chinese, Traditional Chinese, Korean, Portuguese, Greek, Urdu and Turkish. Dr. Deitel has delivered hundreds of programming courses to academic, corporate, government and military clients.