Training Categories

Click on a link to see more about each course.

Technical Training

Schedule

Course Outline

Dates Offered (click on the desired date to register):


This course is currently not scheduled for the near future.

C++ Programming Language

Course Number:  C1

Course Description:  This is an introduction to Object-Oriented programming using the C++ language. The design and implementation of programs C++ using class libraries. The participant will work with C++, writing programs during class hours, there will be programming assignments to further enhance programming skills in C++. Topics include data types, in line and overloaded functions and operators, class types and members, access and protection of members and friends, constructors and destructors, and streams.

Objectives:  The participant will be able to: ·Write programs using all of the syntactic features of C++. ·Describe the principles and advantages of object-oriented programming. ·Describe the concepts of object-oriented programming. ·Use encapsulation. ·Use class libraries. ·Perform dynamic memory allocation with new and delete. ·Use default function arguments. ·Build abstract data types using classes. ·Create and use constructor and destructor functions. ·Use friend functions and friend classes. ·Describe and use Overloading. ·Use inheritance to build class hierarchies. ·Describe and use exception handling. ·Describe and use multiple inheritance. ·Describe and use I/O streams

Benefits: 

Target Audience: 

Prerequisites:  C Programming, Advanced C Programming, and Object-Oriented Analysis/Design Overview.

Course Length:  3 or 4 days

CourseTopics:

Basic Concepts What is an Object? Putting Object-Oriented Design in Context Developing O-O Designs Information Hiding and Abstraction Developing O-O Designs from Requirements Identifying Classes and Operations "Is-a" vs "Has-a" Combining O-O and Traditional Designs Data Types and Operations Introduction Numeric Types Class complex References Const Qualified Types Advantages of Object-Oriented Analysis & Design Encapsulation Benefits Abstraction Benefits Inheritance Benefits Reuseability Procedural Programming Functions and modules Functional Decomposition Functional decomposition: example File Organization Structured Programming Overloading Inline Functions Arguments and Returns Values Classes Class types Class String Constructors Destructors Data Members Static Data members Constant Members Function members Operator functions Access protection and friends Initialization and conversion Pointers to class members Dynamic Storage Allocation Recursive Data Structures Storage Management in C++ Data Abstraction Abstract Data Type (ADT) Complex Numbers Strings Sorted Collections Control Abstraction Inheritance Base and Derived Classes Class Derivation – examples Class Derivation and Constructors The “is-a” Relationship Class Hierarchies Implicit calls Base Constructors Calling Ordering Abstract base classes Visibility Access Control Public Derivation Private Derivation Protected Members Virtual Inheritance Virtual Functions Protected Members Pure Virtual Functions Virtual Base classes Object Oriented Programming Object Oriented Programming Designing objects Object types as modules Dynamic object oriented style Storage Management General Issues Storage Management in Constructors Storage Management in Destructors Operators new and delete new _ handler Overloading new and delete Arrays Class-specific new and delete Copy Constructor X(X&) Implicit copy semantics Libraries Libraries Interface to exiting libraries Reusable Libraries in C++ I/O and String Libraries Files and Streams Using Ostream and Istream Buffered I/O Designing a Library Generic Libraries Using Container Classes Heterogeneous Classes Handling Exceptions in Libraries

Phone:  772 217 3261

Email:  info@jhltech.com

Contact Us