Introduction to C Memory Management and C++ Object-Oriented Programming

Lecture Notes

 

SES #

TOPICS

LECTURE NOTES

SUPPORTING FILES

1

Motivation for using C/C++; discussion of where C and C++ sit in the abstraction hierarchy; writing our first C programs

(PDF)

 

2

The logistics of memory manipulation in C (pointers, structs)

(PDF)

(ZIP) (This ZIP file contains: 1 .c file and 1 .h file.)

3

More advanced memory manipulation in C. We'll show double linked-list insert in place, inserting into a linked list using a double pointer, corner cases of using memory (when we actually need heap allocation), etc.

(PDF)

 

4

Introduction to C++; encapsulation: classes, namespaces, constructors and destructors; memory management in C++ (new, delete); operator overloading and standard input/output

(PDF)

(ZIP) (This Zip file contains: 3 .cc files and 2 .h files.)

5

Inheritance and polymorphism; templates; standard library containers

(PDF)

(ZIP) (This ZIP file contains: 4 .cc files and 3 .h files.)

6

Tricks of the trade. Things people might see in interviews, etc. Review and discussion of the covered topics, Q&A.

(PDF)