Modern C++ Full Throttle with Paul Deitel: Intro to C++20 & the Standard Library
Published by Pearson
Presentation-Only Intro to Fundamentals, Arrays, Vectors, Pointers, OOP, Ranges, Views, Functional Programming; Brief Intro to Concepts, Modules & Coroutines
- C++20 is the most significant C++ standard update ever
- Dive into core Modern C++ features
- Live instruction by Paul Deitel—best-selling book, video, and interactive multimedia courses author and one of the world’s most experienced programming-language trainers
- Paul presents the code using the Deitel live-code approach to demonstrate most key language features in the context of complete programs with live outputs
- Uses the latest Microsoft Visual C++, GNU g++, and LLVM clang++ compilers
Intended for programmers with a background in another high-level language, Modern C++ Full Throttle with Paul Deitel: Intro to C++20 & the Standard Library is a code-intensive presentation of C++—the world’s most popular language for building high-performance, business-critical, and mission-critical applications.
In the context of complete C++20 programs and using the latest Microsoft Visual C++, GNU g++, and LLVM clang++ compilers, Paul will demonstrate a broad range of core language and library features. You’ll quickly become familiar with C++ syntax, Modern C++ idioms, and key C++ standard library features—I/O, C++20 text formatting, secure random-number generation, array/vector containers, strings, string_views, regular expressions, spans, smart pointers, an intro to C++20 ranges/views & functional-style programming. You’ll also see brief intros to C++20 Concepts, Modules and Coroutines, which are treated in depth in the follow-on course (see below). This aggressively paced, presentation-only, code-walkthrough course has no lab component.
After taking this class, you’ll be ready to take C++20 “Big Four” Full Throttle with Paul Deitel: Ranges, Concepts, Modules, Coroutines & More (coming soon) in which Paul provides a code-intensive presentation of C++20’s “Big Four” features—Ranges, Concepts, Modules, and Coroutines—and several of Modern C++’s most compelling, leading-edge language and standard library features, including containers, iterators, algorithms, custom templates for compile-time polymorphism, template metaprogramming, parallel algorithms, and concurrency.
With his two C++20 Full Throttle courses, Paul has created a rigorous tour de force of Modern C++ and its extensive libraries. As compiler vendors implement key C++23 features, Paul will add feature previews to these courses and video extensions to his C++20 Fundamentals LiveLessons.
As time permits, Paul answers questions during the course. Afterward, send additional questions to paul@deitel.com. He’ll respond.
What you’ll learn and how you can apply it
By the end of the live online course, you’ll understand:
- Compiling and executing C++ programs with the Microsoft Visual C++, GNU g++, and LLVM clang++ compilers.
- Fundamental types, strings, I/O, C++20 text-formatting
- Control statements, functions, intro to function templates
- Preferring array and vector standard library containers to built-in arrays (Downplaying) Pointers in Modern C++; C++20 spans strings, string_views, regular expressions
- Custom classes—Data members, member functions
- Inheritance and runtime polymorphism (compile-time polymorphism is covered in-depth in the follow-on course)
- Exception handling
- Crafting valuable classes—Operator overloading, modern C++ dynamic memory management with RAII and smart pointers, copy/move semantics, C++20 three-way comparison (<=>) operator
- Functional-style programming—Filter/map/reduce operations, lambda expressions, intro to C++20 ranges and views (covered in depth in the follow-on course)
- Brief intro to C++20 concepts, modules and coroutines (covered in-depth in the follow-on course)
And you’ll be able to:
- Leverage your object-oriented programming knowledge to quickly dive into C++. (Note: If you’re not an object-oriented programmer, you’ll still get a lot from this class, but you should also watch Lessons 9 – 11 of Paul Deitel’s video course C++20 Fundamentals LiveLessons for his in-depth Modern C++ object-oriented programming treatment.)
- Review many C++ live-code examples with outputs
- Use C++ standard library and open-source libraries that enable you to perform significant tasks—the follow-on course covers substantial additional C++ standard library capabilities
This live event is for you because...
- You don’t know C++ but currently program in another object-oriented language—such as Java, Python, C#, Objective-C, Swift or JavaScript—and want a fast-paced, presentation-only, code-intensive intro to Modern C++ core language and library features. (The follow-on course covers substantial additional C++ standard library capabilities.)
- You took a college-level or professional C++ course, or you programmed in C++ a while back and want to quickly refresh your C++ knowledge in the context of Modern C++ with C++20
- You’re a developer using limited C++ features and would like to see the features Modern C++ offers
- You’re a manager considering moving your team to C++20
Prerequisites
- Programming in an object-oriented language, such as Java, Python, C#, Objective-C, Swift or JavaScript
- Feel free to contact Paul Deitel (paul@deitel.com) before the course to confirm whether this aggressively paced, presentation-only, code-intensive course is appropriate for you.
Course Set-up
- This is a presentation-only course—no pre-course setup is required.
Recommended Preparation
If you’d like to compile and run the C++ code during the presentation, watch Paul’s Before You Begin and Lesson 1 videos in his C++20 Fundamentals LiveLessonsfor setup instructions.
- Paul will provide the C++ source code and PDF slides on the day of the course.
Questions after the course? Send an e-mail to paul@deitel.com. He’ll respond.
Recommended Follow-up
- To review at a more relaxed pace what you learned in this Full Throttle course, watch Lessons 1-12 of C++20 Fundamentals LiveLessons by Paul Deitel
- This course’s contents are based on lessons 13-18 and 20 of Paul’s C++20 Fundamentals LiveLessons video
- Questions after the course? Send an e-mail to paul@deitel.com. He’ll respond.
Schedule
The time frames are only estimates and may vary according to how the class is progressing.
This intense, full-day, 8-hour course contains six lecture segments punctuated by four short breaks and a 45-minute meal break.
Part 1: Compiling and executing C++ programs with the Microsoft Visual C++, GNU g++, and LLVM clang++ compilers
Part 2: Fundamental types, strings, I/O, C++20 text-formatting
Part 3: Control Statements
Break (7 minutes)
Finish Part 3: Control Statements
Part 4: Functions and an Intro to Function Templates
Part 5: Preferring array and vector standard library containers to built-in arrays
Break (7 minutes)
Finish Part 5: Preferring array and vector standard library containers to built-in arrays
Part 6: (Downplaying) Pointers in Modern C++; C++20 spans
Meal break (30 minutes, approximately 3 hours and 15 minutes into the course)
Part 7: strings, string_views, regular expressions
Break (7 minutes)
Part 8: Custom classes—Data members, member functions
Part 9: Inheritance and runtime polymorphism
Part 10: Exception handling
Break (7 minutes)
Part 11: Crafting valuable classes—Operator overloading, modern C++ dynamic memory management with RAII and smart pointers, copy/move semantics, C++20 three-way comparison (<=>) operator
Part 12: Functional-style programming—Filter, map & reduce operations, lambda expressions, intro to C++20 Ranges & Views
Part 13: Brief Intro to C++20 Concepts, Modules and Coroutines (covered in-depth in the follow-on course)
Your Instructor
Paul J. Deitel
Paul J. Deitel, CEO and Chief Technical Officer of Deitel & Associates, Inc., is a graduate of MIT with over 44 years of experience in computing. He holds the Java Certified Programmer and Java Certified Developer designations and is an Oracle Java Champion. He is one of the world’s most experienced programming-languages trainers, having taught professional courses to software developers since 1992. His video courses on platforms like O’Reilly Online Learning have garnered millions of views, with his Java Fundamentals LiveLessons, Python Fundamentals LiveLessons and C# Fundamentals LiveLessons each ranking #1 at various times among thousands of video products. He has delivered hundreds of programming courses to academic, industry, government and military clients of Deitel & Associates, Inc. internationally, including UCLA, SLB (formerly Schlumberger), 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, Cisco, Puma, iRobot and many more. He and his co-author, Dr. Harvey M. Deitel, are among the world’s best-selling programming-language textbook/professional book/video/interactive multimedia authors.