C++ is one of the most popular programming languages. Processing speed comparable to C, and object oriented design ability, evolving standard that brings all the newest trends and features into the language – this all what makes millions of programmers choose it as the main programming language. During the course, you will get into fascinating work of object-oriented programming and will know what new C++ brings to programming word. On completion, students receive certificate.
Program description:
Module 1
- Introduction to C++ programming, history and evolving of standard
- Comparison of C++ with other programming languages
- Object oriented programming
- Encapsulation
- Polymorphism
- Inheritance
Module 2
- Classes
- Constructors
- Destructors
- Overloaded constructors
- Copy constructor
- Pointer to object
- this pointer
Module 3
- Constant methods
- Explicit constructor
- Operator overloading
- Operator types
- Common rules for overloading unary and binary operators
- Cast operators
- Increment and decrement operators overloading
- Prefix and postfix differences
- Indexing operator overloading
- Function call operator overloading
Module 4
- Friend functions
- Friend classes
- Friend operators overloading
Module 5
- Static class members
- Memory management in C and C++
- Overloading of new and delete operators
- Overloading of -> operator
- Smart pointers
Module 6
- Templates and meta-programming introduction
- Function templates
- Class templates
Module 7
- Nested classes
- Aggregation and Composition
- Inheritance
- Access modifiers
- Constructors and destructors in inheritance
- Multiple inheritance
- Merits and caveats of inheritance
- Template inheritance
- Virtual base classes
Module 8
- Virtual functions
- Delayed binding
- Static and dynamic polymorphism
- Virtual functions table
- Abstract classes
- Virtual destructor
- Pure virtual destructor
Module 9
- Exception handling techniques
- Code words try, catch and throw
- Unwinding the stack
On course completion, you will be able to:
- Proclaim yourself a hardcore programmer and start your career in the field
- Get deep understanding of how object-oriented programming differ from procedural programming
- Create any complexity software in C++ language. There is no limit for you now.