Syllabus for "C++ Programming Language


"C++ programming language"
Description: In this class, we will learn the basics about C++ programming language such as variables, data types, arrays, pointers, functions and classes etc.

Objective: At the end of the class, we expect people to have a good understanding about the concept of object -oriented programming using C++, be able to write and read basic C++ code.

Prerequisite:
No prior knowledge about C++ is required, but people are expected to have some basic knowledge about computers, some knowledge about one or two other programming languages such as Perl, PHP, Python or Java etc is preferred.

Course Outlines:

Introduction
• What is C++?
• Why C++?
• C and C++
• Exception Handling
• Object Oriented Programming
• Standard Template Library

Types and declarations
• Types
• Booleans
• Integer Types
• Floating-Point Types
• Sizes
• Void
• Enumerations
• Declarations

Pointers, Arrays and Structures
• Pointers
• Arrays
• Pointers into Arrays
• Constants
• References
• Pointers to void
• Structures

Expressions and Statements
• A Deck Calculator
• Operator Summary
• Statement Summary
• Comments and Indentation

Functions
• Function Declarations
• Passing
• Value Return
• Overloaded Function Names
• Default Arguments
• Pointer to Function
• Macros

Namespaces and Exceptions
• Namespaces
• Exceptions

Source Files and Programs
• Separate Compilation
• Linkage
• Using Header Files
• Programs

Classes
• Classes
• Access Control
• Constructors
• Member functions
• Static members
• Destructors
• Memory allocation
• Member initialization

Operator overloading
• Introduction
• Operator Functions
• A Complete Number Type
• Conversion Operators
• Friends
• Large Objects
• Essential Operators
• Subscripting
• Functions Calls
• Dereferencing
• Increment and Decrement
• A String Class

Derived class
• Introduction
• Derived Classes
• Abstract Classes
• Design of Class Hierarchies
• Class Hierarchies and Abstract Classes