![]() |
Learn Advanced Modern C++ - Printable Version +- Softwarez.Info - Software's World! (https://softwarez.info) +-- Forum: Library Zone (https://softwarez.info/Forum-Library-Zone) +--- Forum: Video Tutorials (https://softwarez.info/Forum-Video-Tutorials) +--- Thread: Learn Advanced Modern C++ (/Thread-Learn-Advanced-Modern-C--922488) |
Learn Advanced Modern C++ - AD-TEAM - 04-19-2025 ![]() Learn Advanced Modern C++ Last updated 7/2024 MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz Language: English | Size: 15.33 GB | Duration: 24h 2m Take your knowledge of C++ to the next level! What you'll learn Know and understand all the important features of modern C++ Acquire a good knowledge of the Standard Template Library, including algorithms ("the best-kept secret in C++") Learn how to use modern C++ to write code which is safer, more expressive and more efficient Throrough coverage of C++11, C++14 and the most important features of C++17 How to write a game using Modern C++ and the SFML graphics library Requirements Some knowledge of C++ beyond beginner level A compiler which supports C++11, preferably C++14 or C++17 Proficiency in English (B2 level, preferably C1) Description This course will enhance your knowledge of the technically challenging but powerful and efficient C++ programming language.It is designed to give you an intermediate-to-advanced level understanding of the language. There is extensive coverage of the Standard Template Library, including standard algorithm functions. Finally, a project in which you will exercise your new skills by writing a simple game.After successfully completing this course, you should be able to apply for jobs and courses which require a good knowledge of C++.The material is based around the modern version of the language. I teach the C++11, C++14 and C++17 standards, but also cover older variations which are still widely used.The course is thorough and goes into the material in depth. It assumes basic C++ knowledge, such as the material in my course "Begin Programming with Modern C++": function calls, loops, conditionals and classes.There are downloadable exercises for each video, with solutions, so you can check your understanding as you learn, gaining familiarity and confidence with the material. I will be actively supporting the course and I will respond promptly if you have any questions or experience difficulties with the course content. Please feel free to use the Q&A feature or alternatively you can send me a private message. Overview Section 1: Introduction Lecture 1 Introduction to the Course Lecture 2 Lecturer Introduction Lecture 3 Source Code for this Course Section 2: Review of C++ Lecture 4 Local Variables and Function Arguments Lecture 5 Reference and Value Semantics Lecture 6 Declaration and Initialization Lecture 7 Classes Lecture 8 Special Member Functions Lecture 9 Pointers and Memory Lecture 10 Array, String and Vector Lecture 11 Conway's Game of Life Overview Lecture 12 Two-Dimensional Arrays Lecture 13 Conway's Game of Life Practical Lecture 14 Conway's Game of Life Practical Continued Lecture 15 Numeric Types and Literals Lecture 16 String Literals Lecture 17 Casting Lecture 18 Iterator Introduction Lecture 19 The auto keyword Lecture 20 Loops and Iterators Lecture 21 Iterator Arithmetic and Iterator Ranges Lecture 22 If Statements and Switch in C++17 Lecture 23 Templates Overview Lecture 24 Namespaces Lecture 25 Function Pointer Section 3: C++ String Interface Lecture 26 Basic String Operations Lecture 27 Searching Strings Lecture 28 Adding Elements to Strings Lecture 29 Removing Elements from Strings Lecture 30 Converting between Strings and Numbers Lecture 31 Miscellaneous String Operations Lecture 32 Character Functions Section 4: Files and Streams Lecture 33 Files and Streams Lecture 34 File Streams Lecture 35 Streams and Buffering Lecture 36 Unbuffered Input and Output Lecture 37 File Modes Lecture 38 Stream Member Functions and State Lecture 39 Stream Manipulators and Formatting Lecture 40 Floating-point Output Formats Lecture 41 Stringstreams Lecture 42 Resource Management Lecture 43 Random Access to Streams Lecture 44 Stream Iterators Lecture 45 Binary Files Lecture 46 Binary File Practical Section 5: Special Member Functions and Operator Overloading Lecture 47 Constructors in Modern C++ Lecture 48 Copy Constructor Overview Lecture 49 Assignment Operator Overview Lecture 50 Synthesized Member Functions Lecture 51 Shallow and Deep Copying Lecture 52 Copy Elision Lecture 53 Conversion Operators Lecture 54 Default and Delete Keywords Lecture 55 Operators and Overloading. Lecture 56 Which Operators to Overload Lecture 57 The Friend Keyword Lecture 58 Member and Non-member Operators Lecture 59 Addition Operators Lecture 60 Equality and Inequality Operators Lecture 61 Less-than Operator Lecture 62 Prefix and Postfix Operators Lecture 63 Function Call Operator Lecture 64 Printing Out Class Member Data Section 6: Algorithms Introduction and Lambda Expressions Lecture 65 Algorithms Overview Lecture 66 Algorithms with Predicates Lecture 67 Algorithms with _if Versions Lecture 68 Lambda Expressions Introduction Lecture 69 Lambda Expressions Practical Lecture 70 Lambda Expressions and Capture Lecture 71 Lambda Expressions and Capture Continued Lecture 72 Lambda Expressions and Partial Evaluation Lecture 73 Lambda Expressions in C++14 Lecture 74 Pair Type Lecture 75 Insert Iterators Lecture 76 Library Function Objects Section 7: Algorithms Continued Lecture 77 Searching Algorithms Lecture 78 Searching Algorithms Continued Lecture 79 Numeric Algorithms Lecture 80 Write-only Algorithms Lecture 81 for_each Algorithm Lecture 82 Copying Algorithms Lecture 83 Write Algorithms Lecture 84 Removing Algorithms Lecture 85 Removing Algorithms Continued Lecture 86 Transform Algorithm Lecture 87 Merging Algorithms Lecture 88 Reordering Algorithms Lecture 89 Partitioning Algorithms Lecture 90 Sorting Algorithms Lecture 91 Sorting Algorithms Continued Lecture 92 Permutation Algorithms Lecture 93 Min and Max Algorithms Lecture 94 Further Numeric Algorithms Lecture 95 Further Numeric Algorithms Continued Lecture 96 Introduction to Random Numbers Lecture 97 Random Numbers in Older C++ Lecture 98 Random Numbers in Modern C++ Lecture 99 Random Number Algorithms Lecture 100 Palindrome Checker Practical Lecture 101 Random Walk Practical Section 8: Containers Lecture 102 Container Introduction Lecture 103 Standard Library Array Lecture 104 Forward List Lecture 105 List Lecture 106 List Operations Lecture 107 Deque Lecture 108 Tree Data Structure Lecture 109 Sets Lecture 110 Map Lecture 111 Maps and Insertion Lecture 112 Maps in C++17 Lecture 113 Multiset and Multimap Lecture 114 Searching Multimaps Lecture 115 Unordered Associative Containers Lecture 116 Unordered Associative Containers Continued Lecture 117 Associative Containers and Custom Types Lecture 118 Nested Maps Lecture 119 Queues Lecture 120 Priority Queues Lecture 121 Stack Lecture 122 Emplacement Lecture 123 Mastermind Game Practical Lecture 124 Containers Workshop Section 9: Inheritance and Polymorphism Lecture 125 Class Hierarchies and Inheritance Lecture 126 Base and Derived Classes Lecture 127 Member Functions and Inheritance Lecture 128 Overloading Member Functions Lecture 129 Pointers, References and Inheritance Lecture 130 Static and Dynamic Type Lecture 131 Virtual Functions Lecture 132 Virtual Functions in C++11 Lecture 133 Virtual Destructor Lecture 134 Interfaces and Virtual Functions Lecture 135 Virtual Function Implementation Lecture 136 Polymorphism Section 10: Error Handling and Exceptions Lecture 137 Error Handling Lecture 138 Error codes and Exceptions Lecture 139 Exceptions Introduction Lecture 140 Try and Catch Blocks Lecture 141 Catch-all Handlers Lecture 142 Exception Mechanism Lecture 143 std::exception Hierarchy Lecture 144 Standard Exception Subclasses Lecture 145 Exceptions and Special Member Functions Lecture 146 Custom Exception Class Lecture 147 Exception Safety Lecture 148 The throw() Exception Specifier Lecture 149 The noexcept keyword Lecture 150 Swap Function Lecture 151 Exception-safe Class Lecture 152 Copy and Swap Lecture 153 Comparison with Java and C# Exceptions Section 11: Move Semantics Lecture 154 Move Semantics Lecture 155 Lvalues and Rvalues Lecture 156 Lvalue and Rvalue References Lecture 157 Value Categories Lecture 158 Move Operators Lecture 159 RAII Class with Move Operators Lecture 160 Move-only Types and RAII Lecture 161 Special Member Functions in C++11 Lecture 162 Using Special Member Functions in C++11 Lecture 163 Function Arguments and Move Semantics Lecture 164 Forwarding References Lecture 165 Perfect Forwarding Lecture 166 Perfect Forwarding Practical Section 12: Smart Pointers Lecture 167 Smart Pointers Introduction Lecture 168 Unique Pointer Lecture 169 Unique Pointers and Polymorphism Lecture 170 Unique Pointers and Custom Deleters Lecture 171 The Handle-Body Pattern Lecture 172 The pImpl Idiom Lecture 173 Reference Counting Lecture 174 Shared pointer Lecture 175 Weak Pointer Lecture 176 Weak Pointer and Cycle Prevention Section 13: Miscellaneous Features Lecture 177 Chrono Library Introduction Lecture 178 Chrono Duration Types Lecture 179 Chrono Clocks and Time Points Lecture 180 Bitsets Lecture 181 Tuples Lecture 182 Tuples in C++17 Lecture 183 Unions Lecture 184 Unions Continued Lecture 185 Mathematical Types Lecture 186 Bind Lecture 187 Callable Objects Lecture 188 Member Function Pointers Lecture 189 Interfacing to C Lecture 190 Run-time Type Information Lecture 191 Multiple Inheritance Lecture 192 Virtual Inheritance Lecture 193 Inline Namespaces Lecture 194 Attributes Section 14: Compile-time Programming Lecture 195 Compile-time Programming Overview Lecture 196 Constant Expressions Lecture 197 Constexpr Functions Lecture 198 Classes and Templates Lecture 199 Template Specialization Lecture 200 Extern Templates Lecture 201 Variadic Templates Lecture 202 Miscellaneous Template Features Lecture 203 Library-defined Operators Lecture 204 Constexpr If Statement Lecture 205 Constexpr If Examples Lecture 206 The decltype Keyword Section 15: Project: A Breakout Game Using Modern C++ with SFML Lecture 207 Project Breakout Lecture 208 SFML Introduction Lecture 209 Compiler Configuration for SFML Lecture 210 Basic Window Lecture 211 Random Walk Revisited Lecture 212 Sprite Lecture 213 Ball Lecture 214 Bouncing Ball Lecture 215 Paddle Lecture 216 Moving Paddle Lecture 217 Ball-Paddle Interaction Lecture 218 Bricks Lecture 219 Ball Interaction with Bricks Lecture 220 Game Manager Lecture 221 Entity Manager Overview Lecture 222 Entity Manager and Object Creation Lecture 223 Entity Manager and Object Operations Lecture 224 Brick Strength Lecture 225 More Features Lecture 226 Conclusion Section 16: Resources Lecture 227 Recommended Books Lecture 228 C++ "Cheat Sheet" Infographics Lecture 229 The "Awesome C++ Frameworks and Libraries" Github Lecture 230 The "Awesome Modern C++ Resources" Github Lecture 231 Bonus Material Programmers who have some knowledge of Intermediate C++ and want to learn more,C++ developers who wish to refresh and/or update their skills ![]() |