Class Description:
Course Content
- Create, compile and run C++ programs
- Write functions, decisions, loops and exceptions
- Declare, use and distinguish variables, constants, arrays, pointers and references
- Define and implement classes to produce reliable, reusable code
- Performing arithmetic computations and string operations
- Defining and calling top-level and class-member functions
- Reading and writing formatted I/O
- Using for loops and if/else decisions
- Managing dynamic data
- Extending a class with inheritance
Prerequisites:
None.
Who Should Attend?:
This course is is beneficial for professional programmers who are interested in programming with C++, including application and systems programmers, software engineers and their managers.
What You Will Learn:
Introduction and Overview
- Relating C, C++, Java and C#
- The in-class development environment
- Other development environments
C++ Programming Building Blocks
The main function and standard I/O
- Main's specification and body
- Displaying values and strings to cout
- Reading values from cin
- Formatting with stream manipulators
Objects, constants and references
- Declaring and initializing variables
- Utilizing C++ 11/14 new keywords
- Integer and floating-point data types
- Performing calculations and displaying results
- Utilizing references for efficiency and constants for safety
Defining and calling functions
- Passing arguments to functions and returning values from functions
- Call-by-value vs. call-by-reference vs. call-by-address
- Scope, duration and initial values variables
Decisions, loops and logic
- Making decisions with if/else
- bool vs. int logical values
- if/else statement "chains"
- Performing loops with while and for
- Implementing C++ range-based for loops
- Equality, relational and logical operators
Arrays, pointers and strings
- Declaring and using arrays and pointers
- Storing strings in character arrays
- Accessing array elements via pointers
- Pointers vs. references
- Standard string class and functions
Defining C++ Classes and Objects
Encapsulating higher-level data types
- Public member functions and private data members
- Protected class members
- Constructors and destructors
- Self-reference: the this pointer
- The class member operator (::)
Declaring, accessing and modifying objects
- Manipulating arrays of objects, pointers to objects and references to objects
- Invoking member functions
- const member functions
- Passing objects by value and by reference
Overloading and templates
- Simplifying class interfaces
- Function signatures
- Overloading assignment (=) and insertion (\
- Friend functions and classes
- Explicit copy/move construction
- Avoiding default assignment and copy construction
- Utilizing STL templates to define families of classes
Separating interfaces and implementations
- How separation supports code reuse
- Building header files and code files
Extending Classes via Inheritance
Deriving new classes from existing classes
- Construction and destruction of derived objects
- Reusability via incremental extensions
- Base classes and derived classes
Utilizing polymorphic functions
- Overriding virtual base-class member functions in derived classes
- Runtime lookup of functions through base-class pointers and references
Managing dynamic data
- Allocating and deallocating memory with new and delete
- Handling errors with try and catch
- Avoiding memory leaks
- Utilizing lambdas and smart pointers
Standards and Portability
- Applicability to Windows and UNIX/Linux
- ANSI/ISO C++ 11/14 and evolving standards
What is Included:
Duration:
40 hours
Price:
$2 300.00
10% Discount for Veterans, or 20% Discount for Government Agencies!
Use coupon code "VET2020" or "GOV2020" at checkout. Call us at 888-410-7818 to verify your status before class.
Program: