Get in Touch

Course Outline

Course Overview and Introduction

Comparative Analysis of C, C++, Java, and C# Programming Languages

Instructor-led development environments

Alternative development platforms for government use

Foundational Elements of C++ Programming

Core Functionality and Standard Input/Output Operations

  • Outputting values and text strings via cout
  • Inputting values via cin
  • Controlling output formats with stream manipulators

Data Objects, Constants, and Reference Types

  • Variable declaration and initialization procedures
  • Utilizing C++ 11/14 standard extensions

  • Integer and floating-point data type definitions
  • Executing calculations and reporting results
  • Leveraging references for performance optimization and constants for data integrity

Function Definition and Invocation

  • Argument passing mechanisms and value return protocols
  • Comparative analysis of call-by-value, call-by-reference, and call-by-address methods
  • Variable scope, lifetime, and initialization standards

Control Flow: Conditional Logic and Iteration

  • Conditional branching using if/else statements
  • Differentiating between bool and int logical representations
  • Implementing sequential if/else structures
  • Iterative processing with while and for loops
  • Applying C++ range-based for loop syntax
  • Application of equality, relational, and logical operators

Data Structures: Arrays, Pointers, and Strings

  • Array and pointer declaration and usage guidelines
  • String storage within character arrays
  • Array element access via pointer arithmetic
  • Distinguishing between pointers and references
  • Utilizing the standard string class and associated functions

Class and Object Construction in C++

Encapsulation of Complex Data Types

  • Public member functions and private data members
  • Protected class member accessibility
  • Constructor and destructor implementation
  • Object self-reference through the this pointer
  • Application of the scope resolution operator (::)

Object Declaration, Access, and Modification

  • Management of object arrays, pointers to objects, and references to objects
  • Execution of member functions
  • Implementation of const member functions
  • Passing objects by value versus by reference

Operator Overloading and Template Programming

  • Streamlining class interface designs
  • Function signature specifications
  • Overloading the assignment (=) and insertion (\<\<) operators
  • Implementation of friend functions and classes
  • Explicit definition of copy and move constructors
  • Mitigation strategies for default assignment and copy construction behaviors
  • Leveraging Standard Template Library (STL) templates for scalable class hierarchies

Interface and Implementation Segregation

  • Benefits of segregation for code reusability and maintenance
  • Construction of header files and implementation source files

Class Extension Through Inheritance

Creation of Derived Classes from Base Classes

  • Constructor and destructor sequences for derived objects
  • Code reuse through incremental functionality extension
  • Relationships between base and derived classes

Implementation of Polymorphic Behavior

  • Overriding virtual base-class member functions in derived contexts
  • Dynamic function resolution via base-class pointers and references at runtime

Dynamic Memory Management

  • Memory allocation and deallocation using new and delete operators
  • Error handling protocols utilizing try and catch blocks
  • Strategies for preventing memory leaks
  • Application of lambda expressions and smart pointers

Standards Compliance and Portability

  • Compatibility with Windows and UNIX/Linux operating systems
  • Adherence to ANSI/ISO C++ 11/14 standards and future standard evolution

Requirements

a:0:{}

 28 Hours

Number of participants


Price per participant

Testimonials (3)

Upcoming Courses

Related Categories