Discover Classes. Earn 10% Rewards.

C++ Programming for C Programmers is unfortunately unavailable

Thankfully we have 3 other Coding Classes for you to choose from. Check our top choices below or see all classes for more options.

SQL Queries Introduction

Computer Training Source, Inc. See all classes by this school @ 420 N Wabash Ave, Chicago, IL

Work with SQL to retrieve and update data across multiple database systems, including Oracle and Microsoft SQL Server. Practice conditional searches, table joins, functions, and exporting results while building practical database skills.

(22) Beginner 18 and older
$999

4 sessions

Attend
+9990 pts
Gift it!

AI: Text and Image Generation

Computer Training Source, Inc. See all classes by this school @ 420 N Wabash Ave, Chicago, IL

Develop advanced prompt engineering skills to get more precise, effective results from AI systems. Learn how to design targeted, well-structured prompts that optimize AI performance across tasks ranging from data extraction and research to creative content and design, enabling smarter workflows and stronger outputs.

(22) All levels 18 and older
$499

2 sessions

Attend
+4990 pts
Gift it!

Harnessing the Power of AI and Critical Thinking for Better Decision Making

American Management Association See all classes by this school @ 205 N Michigan Ave , Chicago, IL

Strengthen critical thinking and decision-making skills in an AI-driven workplace. Learn to evaluate AI-generated insights, identify biases and assess risks through practical exercises. Explore strategies for combining AI capabilities with human judgment. Develop a framework for making informed, responsible business decisions.

(8) All levels 21 and older
$2,895

2 sessions

Attend
+28950 pts
Gift it!
See all Coding classes Chicago

C++ Programming for C Programmers

  • Beginner
  • 18 and older
  • Earn 10% Rewards
  • Price Lock

    Secure your booking now and we'll match any price drop within 48 hours across all booking platforms, ensuring you never miss out on savings!

  • <b>(Exact location to be announced)</b>, Chicago, IL
  • over 4 sessions

Start Dates (0) $2,095/person

No upcoming dates are currently available.

Book a Private Group Event

Booking this class for a group? Find great private group events

Or see all Coding Group Events

Explore group events and team building activities ranging from cooking, art, escape rooms, trivia, and more.

Class Description

Description

All HOTT courses are available face-to-face, remote-live, on-demand or on-site at your facility. 

This hands on C++ training course presents a thorough introduction to object-oriented programming in C++ for experienced C programmers. The central concepts of C++ syntax and style are taught in the context of using object-oriented methods to achieve reusability, adaptability and reliability. Emphasis is placed on the features of C++ that support abstract data types, inheritance, and polymorphism. Students will learn to apply the process of data abstraction and class design. Practical aspects of C++ programming including efficiency, performance, testing, and reliability considerations are stressed throughout. Comprehensive hands on exercises are integrated throughout to reinforce learning and develop real competency.


Students will learn:

  • Writing procedural programs using C++
  • Using private, public and protected keywords to control access to class members
  • Defining a class in C++Writing constructors and destructors
  • Writing classes with const and static class members
  • Overloading operators
  • Implementing polymorphic methods in programs
  • Writing programs using file I/O and string streams
  • Using manipulators and stream flags to format output
  • Using the keyword template to write generic functions and classes
  • Writing programs that use generic classes and functions
  • Writing programs that use algorithms and containers of the Standard Library
  • Using algorithms and containers of the Standard Library to manipulate string data
  • Using try() blocks to trap exceptions
  • Using catch() blocks to handle exceptions
  • Defining exceptions and using throw to trigger them

Course Prerequisites: Prior programming experience with C.



Course Overview

Moving from C to C++

  • New Compiler Directives
  • Stream Console I/O
  • Explicit Operators
  • Standard Libraries
  • Data Control Capabilities

Handling Data

  • New Declaration Features
  • Initialization and Assignment
  • Enumerated Types
  • The bool Type
  • Constant Storage
  • Pointers to Constant Storage
  • Constant Pointers
  • References
  • Constant Reference Arguments
  • Volatile Data
  • Global Data

Functions

  • Function Prototypes and Type Checking
  • Default Function Data Types
  • Function Overloading
  • Problems with Function Overloading
  • Name Resolution
  • Promotions and Conversions
  • Call by Value
  • Reference Declarations
  • Call-by-Reference and Reference Types
  • References in Function Return
  • Constant Argument Types
  • Conversion of Parameters Using Default Initializers
  • Providing Default Arguments
  • Inline Functions

Creating and Using Objects

  • Creating Automatic Objects
  • Creating Dynamic Objects
  • Calling Object Methods
  • Constructors
  • Initializing Member consts
  • Initializer List Syntax
  • Allocating Resources in Constructor
  • Destructors
  • Block and Function Scope
  • File and Global Scope
  • Class Scope
  • Scope Resolution Operator ::
  • Using Objects as Arguments
  • Objects as Function Return Values
  • Constant Methods
  • Containment Relationships

Dynamic Memory Management

  • Advantages of Dynamic Memory Allocation
  • Static, Automatic, and Heap Memory
  • Free Store Allocation with new and delete
  • Handling Memory Allocation Errors

Controlling Object Creation

  • Object Copying and Copy Constructor
  • Automatic Copy Constructor
  • Conversion Constructor

Inheritance

  • Inheritance and Reuse
  • Composition vs. Inheritance
  • Inheritance: Centralized Code
  • Inheritance: Maintenance and Revision
    - Public, Private and Protected Members
    - Redefining Behavior in Derived Classes
    - Designing Extensible Software Systems
  • Syntax for Public Inheritance
  • Use of Common Pointers
  • Constructors and Initialization
  • Inherited Copy Constructors
  • Destructors and Inheritance
  • Public, Protected, Private Inheritance

Streaming I/O

  • Streams and the iostream Library
  • Built-in Stream Objects
  • Stream Manipulators
  • Stream Methods
  • Input/Output Operators
  • Character Input
  • String Streams
  • Formatted I/O
  • File Stream I/O
  • Overloading Stream Operators
  • Persistent Objects

Introduction to Object Concepts

  • The Object Programming Paradigm
  • Object-Orientated Programming Definitions
  • Information Hiding and Encapsulation
  • Separating Interface and Implementation
  • Classes and Instances of Objects
  • Overloaded Objects and Polymorphism

Templates

  • Purpose of Template Classes
  • Constants in Templates
  • Templates and Inheritance
  • Container Classes
  • Use of Libraries

Strings in C++

  • Character Strings
  • The String Class
  • Operators on Strings
  • Member Functions of the String Class

Exceptions

  • Types of Exceptions
  • Trapping and Handling Exceptions
  • Triggering Exceptions
  • Handling Memory Allocation Errors

C++ Program Structure

  • Organizing C++ Source Files
  • Integrating C and C++ Projects
  • Using C in C++

Reliability Considerations in C++

  • Projects
  • Function Prototypes
  • Strong Type Checking
  • Constant Types
  • C++ Access Control Techniques

Polymorphism in C++

  • Definition of Polymorphism
  • Calling Overridden Methods
  • Upcasting
  • Accessing Overridden Methods
  • Virtual Methods and Dynamic Binding
  • Virtual Destructors
  • Abstract Base Classes and Pure Virtual Methods

Multiple Inheritance

  • Derivation from Multiple Base Classes
  • Base Class Ambiguities
  • Virtual Inheritance
    - Virtual Base Classes
    - Virtual Base Class Information

Declaring and Defining Classes

  • Components of a Class
  • Class Structure
  • Class Declaration Syntax
  • Member Data
  • Built-in Operations
  • Constructors and Initialization
  • Initialization vs. Assignment
  • Class Type Members
  • Member Functions and Member Accessibility
  • Inline Member Functions
  • Friend Functions
  • Static Members
  • Modifying Access with a Friend Class

Operator Overloading

  • Advantages and Pitfalls of Overloading
  • Member Operator Syntax and Examples
  • Class Assignment Operators
  • Class Equality Operators
  • Non-Member Operator Overloading
  • Member and Non-Member Operator Functions
  • Operator Precedence
  • The this Pointer
  • Overloading the Assignment Operator
  • Overloading Caveats

The Standard Template Library

  • STL Containers
  • Parameters Used in Container Classes
  • The Vector Class
  • STL Algorithms
  • Use of Libraries

Refund Policy

Tuition includes all course materials. Students may withdraw before the second day of class to receive a 100% refund, provided course materials are returned to the instructor. Prorated refunds may be granted for withdrawals after the first day.

Cancellations and Changes: There are no cancellation fees.

Attendance Requirements: Students must attend each day of a course and successfully complete hands on exercises in order to receive a certificate of completion. If a student wishes to retake any portion of a class that he or she completes, the student may do so within 12 months at no extra cost.

Intended Audience: Hands On Technology Transfer, Inc., provides IT training designed for technology professionals who wish to quickly upgrade their computer skills. In most states, the employer bears all training costs.

Reviews of Classes at Hands On Technology Transfer, Inc. (7)

Similar Classes

Benefits of Booking Through CourseHorse

  • Booking is safe. When you book with us your details are protected by a secure connection.
  • Lowest price guaranteed. Classes on CourseHorse are never marked up.
  • This class will earn you 20950 points. Earn 10% back in reward points!

Hands On Technology Transfer, Inc.

HOTT delivers instructor-led technical training across the United States, Canada and the United Kingdom. Whether you attend in person, remote-live or on-demand, our classroom-based training philosophy zeroes in on your ability to work more productively and with higher quality results after training....
View school profile
Hands On Technology Transfer, Inc.
Vetted by CourseHorse

A verified Chicago educator.

Loading...