Maxtrain.com - info@maxtrain.com - 513-322-8888 - 866-595-6863
Introduction to C++ Programming Essentials
Description
Introduction to C++ Programming | Intensive C++ Essentials Introduction
Introduction to C++ Programming / C++ Essentials” is an advanced training course designed for experienced programmers who wish to expand their expertise into C++ programming. This intensive course adopts a practical, hands-on approach to reinforce the application of robust coding practices and principles central to object-oriented (OO) programming. By the end of this course, participants will have developed a solid foundation in C++ programming, equipped to handle real-world programming challenges effectively.
The curriculum meticulously covers crucial topics including abstract data types, inheritance, and polymorphism. It encourages an immersive learning experience where students apply concepts of data abstraction and class design in real applications. The course also focuses on enhancing code efficiency, performance, testing, and reliability through comprehensive practical exercises. These exercises ensure that learners not only understand C++ theoretical concepts but also gain practical proficiency and confidence.
NOTE: This course is for experienced developers. Beginners may consider our introductory courses tailored for non-programmers to build foundational programming skills along with basic C++ coding proficiency.
Introduction to C++ Programming | Intensive C++ Essentials Course Objectives
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
Prerequisites
- Practical hands-on prior programming experience and knowledge is required.
Audience
- This is an introductory-level C++ programming course designed for developers with experience programming in C or other languages.
Introduction to C++ Programming | Intensive C++ Essentials Outline
Getting Started
- Overview
- Using the development environment
- C++ file organization and tools
Handling Data
- Primitive Types
- Initialization and Assignment
- Const
- Pointers
- Constant Pointers
- References
- Constant Reference Arguments
- Scope
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
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
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
Controlling Object Creation
- Object Copying and Copy Constructor
- Automatic Copy Constructor
Dynamic Memory Management
- Static, Automatic, and Heap Memory
- Free Store Allocation with new and delete
- Handling Memory Allocation Errors
Strings in C++
- Character Strings
- The String Class
- Operators on Strings
- Member Functions of the String Class
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
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
Templates
- Purpose of Template Classes
- Constants in Templates
- Templates and Inheritance
- Container Classes
- Use of Libraries
Inheritance
- Inheritance and Reuse
- Composition vs. Inheritance
- Syntax for Public Inheritance
- Use of Common Pointers
- Constructors and Initialization
- Inherited Copy Constructors
- Destructors and Inheritance
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
Exceptions
- Types of Exceptions
- Trapping and Handling Exceptions
- Triggering Exceptions
- Handling Memory Allocation Errors
The Standard Library
- Survey of the library
- Containers
- Algorithms
- Numerics
- Date & Time
$2495.00
|
4 Days Course |