C++ Object Oriented Programming

Tutors : Dr Aras BSc, PhD & Mr P Jeeva MSc

Duration :12 weeks

Price : £590

Objective

In 12 weeks course students are able to

  • Use data types variables and constants
  • Use operators to manipulate C++ expressions
  • Do advanced programming with functions
  • Use statements and loops to control program flow
  • Use classes and objects
  • Enter compile and link C++ programs
  • Create and use pointers and references
  • Overload member functions and overload operators
  • Declare and use arrays
  • Reuse and extend existing types through inheritance
  • Declare multiple inheritance and declare classes for virtual inheritance
  • Create abstract data types and implement pure virtual functions
  • Use static member variables and static member functions
  • Use containment and private inheritance
  • Declare friend functions and friend classes
  • Use streams to manage input and output and to write to and read from files
  • Make code easier to read and debug using preprocessor directives
  • Explain the principles of object-oriented analysis and design
  • Create class and function templates
  • Create throw and catch exceptions
  • Use standard library functions and classes
  • Manipulate individual bits

 

Course Content

Getting Started
Discusses why C++ is the emerging standard.  Identifies the steps to develop a C++ program.  Explains how to enter compile and link a C++ program.

The Parts of a C++ Program
Analyzes the parts of a C++ program.  Demonstrates how the parts work together.  Examines what a function is and what it does.

Variables and Constants
Covers how to declare and define variables and constants.  Shows how to assign values to variables and manipulate those values.  Demonstrates how to write the value of a variable to the screen.

Expressions and Statements
Describes what statements blocks and expressions are.  Shows how to branch code based on conditions.  Discusses what truth is and how to act on it.

Functions
Examines what a function is and what its parts are.  Illustrates how to declare and define functions pass parameters into functions and return a value from a function.

Basic Classes
Explains what classes and objects are.  Demonstrates how to define a new class and create objects of that class.  Discusses what member functions and member data are.  Describes what constructors are and how to use them.

More Program Flow
Explains what loops are and how they are used.  Shows how to build various loops.  Presents an alternative to deeply-nested if/else statements.

Pointers
Shows how to declare and use pointers.  Explains what the free store is and how to manipulate memory.

References
Examines how references differ from pointers.  Shows how to create references and use them.  Identifies the limitations of references.  Demonstrates how to pass values and objects into and out of functions by reference.

Advanced Functions
Covers how to overload member functions and overload operators.  Demonstrates how to write functions to support classes with dynamically allocated variables.

Arrays
Discusses what arrays are and how to declare them.  Explains what strings are and how to use character arrays to make them.  Examines the relationship between arrays and pointers.  Illustrates how to use pointer arithmetic with arrays.

Inheritance
Explains what inheritance is.  Shows how to derive one class from another.  Tells what protected access is and how to use it.  Discusses what virtual functions are.

Polymorphism
Examines what multiple inheritance is and how to use it.  Discusses virtual inheritance.  Explains what abstract data types are.  Covers what pure virtual functions are.

Special Classes and Functions
Shows how to use static member variables and static member functions.  Illustrates how to create and manipulate pointers to functions and pointers to member functions.  Demonstrates how to work with arrays of pointers to functions.

Advanced Inheritance
Explains what containment is and how to model it.  Explains what delegation is and how to model it.  Shows how to implement one class in terms of another.  Demonstrates how to use private inheritance.

Streams
Discusses what streams are and how they are used.  Illustrates how to manage input and output using streams.  Shows how to write to and read from files using streams.

The Preprocessor
Describes what conditional compilation is and how to manage it.  Demonstrates how to write macros using the preprocessor.  Shows how to use the preprocessor in finding bugs.

Object-Oriented Analysis and Design
Examines how to analyze problems and design programs from an object-oriented perspective.  Explores how to design for reusability and extensibility.

Templates
Explains what templates are and how to use them.  Tells why templates supply a better alternative to macros.  Shows how to create class templates and function templates.

Exceptions and Error Handling
Covers how exceptions are used and what issues they raise.  Illustrates how to build exception hierarchies.  Explains how exceptions fit into an overall error-handling approach.  Describes what a debugger is.

Using Visual C++

Database Programming, MFC, ActiveX COM, & DCOM