Learn By Example: C++ Programming - 75 Solved Problems
Video description
C++ will never seem intimidating again, once you're done with these examples.
About This Video
C++ is incredibly deep, and it sometimes struggles to get you - the programmer - to understand what it's saying
These 75 examples will help. Each is self-contained, has its source code attached, and gets across a specific C++ use-case. Each example is simple, but not simplistic.
In Detail
Like a gruff uncle, C++ seems intimidating, …
Learn By Example: C++ Programming - 75 Solved Problems
Video description
C++ will never seem intimidating again, once you're done with these examples.
About This Video
C++ is incredibly deep, and it sometimes struggles to get you - the programmer - to understand what it's saying
These 75 examples will help. Each is self-contained, has its source code attached, and gets across a specific C++ use-case. Each example is simple, but not simplistic.
In Detail
Like a gruff uncle, C++ seems intimidating, when it’s just being helpful. These 75 examples will help you understand that. Let's parse that. C++ seems intimidating because all too often, what you see is not what you get. Usually, that's because C++ is trying to help you, but you don't realize that. This section is moving to C++ from C: If you are a C programmer, will run through what you need to know in order to move seamlessly to C++. Objects, Classes and Object-Oriented Programming: Access modifiers, classes, objects, the this pointer, new/delete and dynamic memory allocation gotchas. Operator overloading is a particularly complicated topic - C++ is virtually alone in the ubiquity of overloaded operators. Make sure this doesn't trip you up. Also go deep into the workings of const, static and friend. Inheritance in C++ is considerably more complicated than in Java, mostly because of multiple inheritances, and because of the co-existence of both virtual and non-virtual methods. Templates are a classic generic programming technique that was revolutionary when first added to C++. Understand template functions and classes, as well as template specializations. STL - the Standard Template Library - is incredibly powerful. Get a good sense of collections, iterators and algorithms - the major components of the STL. C++ casts are quite different than C-casts. Understand const_cast, static_cast and dynamic_cast, as well as Real Time Type Identification (RTTI), and the manner in which explicit conversions can be performed using static_cast. Exceptions and exception handling in C++.
Audience
Java and C# programmers - who understand Object Oriented Programming, but are new to C++. Folks with prior programming experience in C. No prior object-oriented programming experience is needed.
C and C++ - similar in some ways but actually very different
C vs C++: Comments are different - and oh C++ has namespaces!
Namespaces? Then we need a scope resolution operator
Not just function overloading, C++ allows operator overloading as well!
Default Values
References, Const and Bool
Chapter 3 : Objects and Classes
Classes mean different things to different people!
Classes - A logical grouping of data and functions
Example 1 and 2: Define a really simple C++ class and instantiate it
Example 3: Invoke the member functions of an object
Example 4 and 5: Setup and clean up using constructors and destructors
Example 6: Access Modifiers
Chapter 4 : Multi-file Programs
Example 7: Separating code into .cpp and .h files
Example 7: Setting up dependencies with multiple files
Chapter 5 : Dynamic Memory Allocation: new and delete
Dynamic Memory Allocation
C++ memory allocation explained
Stop using malloc and free
Do not mix new/delete for single variables with array equivalents new[]/delete[]
Example 8 and 9: Stop using malloc and free, use new and delete instead!
Example 10 and 11: Use new[] and delete [] for arrays - never mix new and new[]
Example 12: The Placement new operator and the “this” pointer
Chapter 6 : The C++ string Class
The C++ string class
Example 14: Strings
Example 15: Inputing multiline strings
Example 16: More common string operations
Example 17: Comparing strings
Example 18: Converting C++ to C strings (and vice versa)
Chapter 7 : References
The basic idea of references
Example 19, 20 and 21: A simple reference, a const reference, and C++ swap
Example 22, 23, 24, 25: Reference initialization, reassignment, aliasing, null
Example 26, 27, 28, 29: References to pointers, references as return types
Chapter 8 : The const Keyword
Example 30 and 31: The C++ const keyword
Example 32: const char* or char* const?
Example 33, 34, 35, 36: Const methods, mutable, overloading on const, const_cast
Passing function parameters const references
Example 37: Passing function parameters const references
Chapter 9 : The static Keyword
The basic idea of static in C++
Example 38: Static member variables
Example 39 and 40: Static member functions
Example 41: const static member variables
Chapter 10 : The friend Keyword
The basic idea of friends in C++
Example 42: Friend functions
Example 43: Friend classes
Chapter 11 : Operator Overloading
Understanding operator overloading - internal and external operators
Choosing between internal and external implementations
Example 44: Overloading the += operator
Example 45: Overloading the + operator
Example 46: Overloading the ++ (and –) operators
Example 47: Overloading the assignment operator
Operator Overloading - Streams Flashback
Example 48: Overloading the and » operators
Chapter 12 : Inheritance
Understanding inheritance - Flashback to objects and classes
Example 49 Understanding Inheritance
Inheritance Explained – I
Inheritance Explained – II
Example 49: Access levels and inheritance types
Example 49: Bringing all inheritance concepts together in code
Examples 50, 51, 52: Types of inheritance
Example 53: virtual functions
Example 53 (continued)
Example 54: pure virtual functions and abstract classes
Example 55: Multiple Inheritances, and a Diamond Hierarchy
Example 56: Virtual inheritance in a Diamond Hierarchy
Example 57: Object Slicing
Example 58: No virtual function calls in constructors or destructors!
Example 59: Virtual destructors rock!
Example 60: Why virtual functions should never have default parameters
Example 61: The strange phenomenon of name hiding
Example 62: Never redefine non-virtual base class methods
Chapter 13 : Templates
Templates as a form of generic programming
Example 63: A simple template function
Example 64: Overriding a default template instantiation
Example 65: A templated smart pointer class
Example 66: Template Specialization (partial or total)
Chapter 14 : STL - The Standard Template Library
Introducing the Standard Template Library
Example 67: The STL vector
Example 68: Iterators
Example 69: map, an associative container
Example 70: STL algorithms
Chapter 15 : C++ Casts
C++ casts are way cooler than C casts
Example 71: const_cast
Example 72: dynamic_cast, and RTTI
Example 73: static_cast, and the explicit keyword
Chapter 16 : Exceptions
Exception handling and burglar alarm
Example 74: Throwing exceptions
Example 75: Handling exceptions with try/catch
Start your Free Trial Self paced Go to the Course We have partnered with providers to bring you collection of courses, When you buy through links on our site, we may earn an affiliate commission from provider.
This site uses cookies. By continuing to use this website, you agree to their use.I Accept