This C++ curriculum uses the modern way of teaching C++ starting with classes for string and vector rather than C-style strings and arrays. This track takes a participant with little to no background in C++ development, through advanced modern topics in C++ design and implementation. C++ is widely used across all development areas as the most efficient OO language.  Participants will gain an understanding of the principles and application of object-oriented, structured, and generic implementation in C++. The Modern C++ language is covered in detail with ample lab opportunities to work through programming exercises reinforcing the materials covered in lecture.  The classes in this track are accelerated and geared toward individuals that already know how to program in a different language. The courses in the curriculum build on one another and should not be taken out of order.  However, the C in C++ and the C++ in Libraries courses are independent of one another.

Upcoming Open-Enrollment Offerings

Open-enrollment courses are a great, cost-effective option for organizations that have an immediate need to train a small number of employees, as well as for individuals looking to boost their skills.

Course Date(s) Time Instructor(s) Hours
Introduction to OpenDDS Programming Dec 1 - Dec 2 Day Simpson 6

Introduction to OpenDDS Programming

Get started with OpenDDS, Object Computing's open source implementation of the Object Management Group's (OMG's) data distribution service (DDS), with this introductory course for C++ and Java developers.


Dates & Times

Wed, Dec 1, 9:00am to 12:00pm
Thu, Dec 2, 9:00am to 12:00pm




Timothy Simpson

Sold Out

Modern C++ Programming Course Catalog

Training engagements are customized to meet your organization's unique needs. Courses can be adapted, expanded, combined, and tailored to cover the specific skills your team requires to achieve your goals.

Introduction to Modern C++

This workshop provides an introduction to the C++ programming language suitable for those not familiar with C. Emphasis is placed upon applying the high/low level constructs, operators, data structures, I/O routines, pointers, and functions for the development of C++-based applications. Object-Oriented programming concepts are not discussed in this course. In the lab sessions, participants work through several hands-on exercises and develop small projects that reinforce the topics discussed.


Intermediate Modern C++

This is the second course in the Modern C++ track, for programmers experienced in another language. This course provides the detail necessary to use C++ to implement applications with predefined types developed by more experienced programmers. This is an accelerated course.


Object-Oriented C++

This is the third course in C++ track, for programmers experienced in another language. This course concentrates on user-defined types. It reviews the concepts of OO programming, then provides the details to implement them in C++. It expands previously presented concepts of exceptions and templates to user-defined types and shows how to use additional features of C++, such as, RTTI. Finally, it provides some tips and guidelines to using OO C++.


C in C++

This course considers the underlying C features in C++. It digs into pointer, native arrays, and memory managements, plus some lesser used features of C.


C++ Libraries

This course considers the libraries that are supplied with C++, especially the Standard Template Library (STL). The STL consists of containers, iterators, and algorithms that help the C++ programmer write safe and fast code.


Advanced Modern C++

This is the sixth course in the Modern C++ certificate track. This course provides the details to understand the lesser used features of C++. It also presents the C++ capabilities for concurrency and functional programming. This is an accelerated course.


C++ Programming with Boost

All C++ developers should be using Boost. This course will expose class participants to the most widely used and useful libraries that make up Boost. Many Boost libraries are being included in the next version of the C++ Standard and many more are proposed for inclusion in future versions. Students will learn how to easily apply these powerful libraries in their own development through detailed expert instructor-led training and by hands-on exercises. Your investment in learning Boost today will be one that will benefit you for years to come.


Introduction to OpenDDS Programming with C++

Get started with OpenDDS, OCI's open source implementation of OMG's data distribution service (DDS) with this introductory course for C++ developers.


OpenDDS Programming with C++

In this 4-day, intensive workshop, students get hands-on experience using the OMG DDS specification and the OpenDDS implementation in their C++ applications.


CORBA Programming with C++

This 4-day workshop provides an in-depth introduction to Common Object Request Broker Architecture (CORBA), an OMG standard that enables collaboration between diverse systems.


The ADAPTIVE Communication Environment C++ Framework

This 4-day workshop prepares students to confidently use the ADAPTIVE Communication Environment (ACE) to overcome network programming complexities and challenges.


Professional Training for Modern Technology Teams

Extensive Catalog

Our course catalog features multiple tracks encompassing common programming languages, multiple modeling and development methodologies, and today's emerging technologies.

Skilled Instructors

Our training courses, workshops, and educational webinars are developed and delivered by team members who work daily with these advanced technologies and can speak with authority as subject matter experts.

Customized Curriculum

Training engagements are customized to meet your organization's unique needs. Courses in our catalog can be adapted, expanded, combined, and tailored to cover the specific skills your team requires to achieve your goals.

Convenient Delivery Options

All courses can be conducted at your location, in our state-of-the-art, Midwest training lab, or online. Regardless of delivery location, all training is delivered live by practicing engineers, allowing students to ask questions and engage with instructors in real time.

Contact us (or email to arrange for a complimentary consultation to discuss your training needs.