Introduction to C++ 20 Programming Essentials
Retail Price: $2,595.00
Next Date: 01/27/2025
Course Days: 5
Enroll in Next Date
Request Custom Course
At Course Completion
This “skills-centric” course is about 50% hands-on lab and 50% lecture, designed to train attendees in basic coding with C++, coupling the most current, effective techniques with the soundest industry practices. Our engaging instructors and mentors are highly experienced practitioners who bring years of current "on-the-job" experience into every classroom.
Working in a hands-on learning environment, guided by our expert team, attendees will learn:
· Defining a class in C++
· Using private, public and protected keywords to control access to class members
· 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
· Apply object-oriented design techniques to real-world programming problems
· 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
Audience Profile
This is an introductory-level C++ programming course designed for developers with experience programming in C or other languages.
Prerequisites
Practical hands-on prior programming experience and knowledge is required.
Outline
1. Getting Started
· Overview
· Using the development environment
· C++ file organization and tools
2. Handling Data
· Primitive Types
· Initialization and Assignment
· Const
· Pointers
· Constant Pointers
· References
· Constant Reference Arguments
· Scope
3. Functions
· Function Prototypes and Type Checking
· Function Overloading
· Name Resolution
· Call by Value
· Call-by-Reference and Reference Types
· References in Function Return
· Constant Argument Types
· Providing Default Arguments
· Inline Functions
4. 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
5. 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
· Scope Resolution Operator ::
· Using Objects as Arguments
· Objects as Function Return Values
· Constant Methods
· Containment Relationships
6. Controlling Object Creation
· Object Copying and Copy Constructor
· Automatic Copy Constructor
7. Dynamic Memory Management
· Static, Automatic, and Heap Memory
· Free Store Allocation with new and delete
· Handling Memory Allocation Errors
8. Strings in C++
· Character Strings
· The String Class
· Operators on Strings
· Member Functions of the String Class
9. Operator Overloading
· Member Operator Syntax and Examples
· Class Assignment Operators
· Class Equality Operators
· Non-Member Operator Overloading
· Member and Non-Member Operator Functions
· Operator Precedence
· This Pointer
· Overloading the Assignment Operator
· Conversion Operators
· Constructor Conversion Operator
· Explicit vs Implicit conversion
10. 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
11. Templates
· Purpose of Template Classes
· Constants in Templates
· Templates and Inheritance
· Container Classes
· Use of Libraries
12. Inheritance
· Inheritance and Reuse
· Composition vs. Inheritance
· Syntax for Public Inheritance
· Use of Common Pointers
· Constructors and Initialization
· Inherited Copy Constructors
· Destructors and Inheritance
17. 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
13. Exceptions
· Types of Exceptions
· Trapping and Handling Exceptions
· Triggering Exceptions
· Handling Memory Allocation Errors
19. The Standard Library
· Survey of the library
· Containers
· Algorithms
· Numerics
· Date & Time
Course Dates | Course Times (EST) | Delivery Mode | GTR | |
---|---|---|---|---|
1/27/2025 - 1/30/2025 | 10:00 AM - 6:00 PM | Virtual | Enroll | |
3/24/2025 - 3/27/2025 | 10:00 AM - 6:00 PM | Virtual | Enroll | |
5/19/2025 - 5/22/2025 | 10:00 AM - 6:00 PM | Virtual | Enroll | |
7/21/2025 - 7/24/2025 | 10:00 AM - 6:00 PM | Virtual | Enroll | |
9/22/2025 - 9/25/2025 | 10:00 AM - 6:00 PM | Virtual | Enroll | |
11/17/2025 - 11/20/2025 | 10:00 AM - 6:00 PM | Virtual | Enroll |