This post contains lecture notes of “Introduction to C++” course which is taught at MIT OpenCourseWare. This is introductory course to the C++ programming language. Anyone with little or no programming experience can equally take this course. However, someone with prior programming experience will still learn C++ specific constructs and concepts.

Important topics of this course are:

  • Basic C++ programming constructs
  • Manipulation of data types i.e. arrays, strings, and pointers using C++
  • Isolate and fix common errors in C++ programs
  • C++ Memory Management including proper allocation/deallocation procedures
  • Object Oriented Approach using C++
  • Writing C++ programs

This course is offered during the Independent Activities Period (IAP), which is a special 4-week term at MIT that runs from the first week of January until the end of the month.

# Topic Description Notes
1 Introduction An introduction to C++ and hello world program, basic language features and variables.

  Introduction - C++ Lecture Notes (111.9 KiB, 12,489 hits)

2 Flow of control Description of Control structures and Nested Control Structures.

  Flow of control - C++ Lecture Notes (127.6 KiB, 5,909 hits)

3 Functions Basic use of functions, declaration, arguments, return values and function overloading.

  Functions - C++ Lecture Notes (459.7 KiB, 6,056 hits)

4 Arrays and Strings Basic use of arrays and strings.

  Arrays and Strings - C++ Lecture Notes (105.5 KiB, 4,892 hits)

5 Pointers Pointers and their Behavior, declaration and syntax.

  Pointers - C++ Lecture Notes (136.9 KiB, 4,554 hits)

6 Classes Class declaration, instances, accessing fields, passing as parameters and constructors.

  Classes - C++ Lecture Notes (503.4 KiB, 5,947 hits)

7 Object-Oriented Programming The Basic Ideas of OOP, Encapsulation, Inheritance, Polymorphism and Multiple Inheritance.

  Object-Oriented Programming - C++ Lecture Notes (147.0 KiB, 7,126 hits)

8 Memory Management Memory management, Allocation and Deallocation, new and delete operators.

  Memory Management - C++ Lecture Notes (513.5 KiB, 7,681 hits)

9 Advanced topics I Templates, Standard Template Library and Operator Overloading.

  Advanced topics I - C++ Lecture Notes (111.7 KiB, 7,080 hits)

10 Advanced topics II File handling, References, Exceptions, Preprocessor Macros and Casting.

  Advanced topics II - C++ Lecture Notes (218.3 KiB, 9,338 hits)