Watch Demo

Rs. 1999  Rs. 599

Learn By Example: C++ Programming - 75 Solved Problems

Learn how to program in C++, one of the most popular and tricky programming languages out there. You will learn C++ with 75 simplistic and hands-on examples.

15h:51m
Lifetime access
19 learners
Course Overview

C++ may seem intimidating to a novice, when it's just being useful. These 75 examples will help you understand that.

Let's parse that.

C++ seems intimidating because in many instances, what you see is not what you get.Typically, that's because C++ is being useful, but you don't realise that. C++ is tremendously deep, and it tries hard to get you, the programmer, to understand what it's saying.

These 75 examples are self-contained, with each of its source code attached and downloaded, and gets across a specific C++ use-case. Each example is simple, but not simplistic.

Read more

Course Objectives

What am I going to get from this course?

  • Utilize the full power of C++ by familiarizing yourself with the language's complexities
  • Make use of inheritance, operator overloading, templates, STL and all vital C++ language features
  • 75 practical examples that will teach you C++ in a practical way

Prerequisite and Target Audience

Prerequisites for the course:

  • Learners should have an understanding of programming concepts such as variables, loops and if-else statements as they are not explained in the course.
  • No experience in object oriented programming experience is required.

This course is designed for programmers with prior experience in C. No experience in object oriented programming experience is required.

Course Plan
Certificate of completion

1. Introducing C++
1 video
Introducing C++ 02:19
3. Objects and Classes
6 videos
Classes mean different things to different people! 12:59

Classes - A logical grouping of data and functions 19:46

Example 1 and 2: Define a really simple C++ class and instantiate it 14:16

Example 3: Invoke the member functions of an object 14:33

Example 4 and 5: Setup and clean up using constructors and destructors 18:07

Example 6: Access Modifiers 19:36
4. Multi-file Programs
2 videos
Example 7: Separating code into .cpp and .h files 16:02

Example 7: Setting up dependencies with multiple files 17:01
5. Dynamic Memory Allocation: new and delete
7 videos
Dynamic Memory Allocation 17:43

C++ memory allocation explained 05:57

Stop using malloc and free 12:15

Do not mix new/delete for single variables with array equivalents new[]/delete[] 10:25

Example 8 and 9: Stop using malloc and free, use new and delete instead! 13:38

Example 10 and 11: Use new[] and delete [] for arrays - never mix new and new[] 10:29

Example 12: The Placement new operator and the "this" pointer 17:06
6. The C++ string Class
6 videos
The C++ string Class 04:21

Example 14: Strings 04:37

Example 15: Inputing multiline strings 05:45

Example 16: More common string operations 15:12

Example 17: Comparing strings 06:07

Example 18: Converting C++ to C strings (and vice versa) 04:41
7. References
4 videos
The basic idea of references 10:47

Example 19, 20 and 21: A simple reference, a const reference, and C++ swap 09:34

Example 22, 23, 24, 25: Reference initialization, reassignment, aliasing, null 14:56

Example 26, 27, 28, 29: References to pointers, references as return types 12:37
8. The const Keyword
5 videos
Example 30 and 31: The C++ const keyword 13:44

Example 32: const char* or char* const? 16:44

Example 33, 34, 35, 36: Const methods, mutable, overloading on const, const_cast 16:15

Passing function parameters const references 09:18

Example 37: Passing function parameters const references 15:05
9. The static Keyword
4 videos
The basic idea of static in C++ 10:33

Example 38: Static member variables 13:08

Example 39 and 40: Static member functions 09:19

Example 41: const static member variables 06:57
10. The friend Keyword
3 videos
The basic idea of friends in C++ 09:52

Example 42: Friend functions 19:49

Example 43: Friend classes 07:08
11. Operator Overloading
8 videos
Understanding operator overloading - internal and external operators 15:55

Choosing between internal and external implementations 09:21

Example 44: Overloading the += operator 14:41

Example 45: Overloading the + operator 12:59

Example 46: Overloading the ++ (and --) operators 15:10

Example 47: Overloading the assignment operator 19:48

Operator Overloading - Streams Flashback 07:31

Example 48: Overloading the << and >> operators 15:28
12. Inheritance
18 videos
Understanding inheritance - Flashback to objects and classes 08:00

Example 49 Understanding Inheritance 18:51

Inheritance Explained - I 07:44

Inheritance Explained - II 06:45

Example 49: Access levels and inheritance types 08:21

Example 49: Bringing all inheritance concepts together in code 15:57

Examples 50, 51, 52: Types of inheritance 18:12

Example 53: virtual functions 16:32

Example 53 (continued) 08:54

Example 54: pure virtual functions and abstract classes 10:28

Example 55: Multiple Inheritance, and a Diamond Hierarchy 15:30

Example 56: Virtual inheritance in a Diamond Hierarchy 06:26

Example 57: Object Slicing 05:42

Example 58: No virtual function calls in constructors or destructors! 06:21

Example 59: Virtual destructors rock! 03:58

Example 60: Why virtual functions should never have default parameters 02:54

Example 61: The strange phenomenon of name hiding 03:34

Example 62: Never redefine non-virtual base class methods 03:13
13. Templates
5 videos
Templates as a form of generic programming 03:29

Example 63: A simple template function 09:48

Example 64: Overriding a default template instantiation 08:28

Example 65: A templated smart pointer class 13:18

Example 66: Template Specialisation (partial or total) 07:59
14. The Standard Template Library
5 videos
Introducing the Standard Template Library 02:48

Example 67: The STL vector 12:28

Example 68: Iterators 08:28

Example 69: map, an associative container 08:00

Example 70: STL algorithms 10:20
15. C++ Casts
4 videos
C++ casts are way cooler than C casts 05:16

Example 71: const_cast 03:06

Example 72: dynamic_cast, and RTTI 12:12

Example 73: static_cast, and the explicit keyword 09:22
16. Exceptions
3 videos
Exception handling and burglar alarms 07:01

Example 74: Throwing exceptions 06:01

Example 75: Handling exceptions with try/catch 05:56

Meet the Author


Loonycorn
4 Alumni of Stanford, IIM-A, IITs and Google, Microsoft, Flipkart

Loonycorn is a team of 4 people who graduated from reputed top universities. Janani Ravi, Vitthal Srinivasan, Swetha Kolalapudi and Navdeep Singh have spent years (decades, actually) working in the Tech sector across the world.

  • Janani: Graduated from Stanford and has worked for 7 years at Google (New York, Singapore). She also worked at Flipkart and Microsoft.
  • Vitthal: Studied at Stanford; worked at Google (Singapore), Flipkart, Credit Suisse, and INSEAD.
  • Swetha: An IIM Ahmedabad and IIT Madras alumnus having experience of working in Flipkart.
  • Navdeep: An IIT Guwahati alumnus and Longtime Flipkart employee.
  • More from Loonycorn
    Ratings and Reviews     4.6/5

    You may also like