All HOTT courses are available face-to-face, remote-live, on-demand or on-site at your facility.
This hands on C++ programming course provides an accelerated introduction to the most essential syntactical components of the C and C++ languages on the first day, prior to four days of focus on object-oriented programming with C++. The course begins by introducing the built in data types, fundamental control constructs, and rich expression operator repertoire common to both C and C+.
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
- Defining variables and building expressions using the variety of data types available in C/C++
- Using the control structures available in C/C++
- Defining functions with/without parameters and call those functions
- Using pointer syntax and understand the purpose of pointers
- 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.
Course Overview
- ANSI C++ Fundamentals
- Data Types, Storage, Classes, and Scope
- Operators and Expressions
- Flow Control Constructs
- Pointers
- Functions
- Moving from C to C++
- Handling Data
- Functions
- Creating and Using Objects
- Dynamic Memory Management
- Controlling Object Creation
- Inheritance
- Streaming I/O
- Introduction to Object Concepts
- Templates
- Strings in C++
- Exceptions
- C++ Program Structure
- Reliability Considerations in C++ Projects
- Polymorphism in C++
- Multiple Inheritance
- Declaring and Defining Classes
- Operator Overloading
- The Standard Template Library
Note: Classes do not have fixed location. Prior to each class they examine the geographical location of the enrolled students and then select a venue that will provide most convenient overall access for the students. Classes are held in hotel conference rooms and exact location is determined 2 weeks prior to the course date.