Get in Touch

Course Outline

Module 1

  • Introduction and reference materials
  • Core concepts
  • Workshop fundamentals
  • Function overloading principles
  • Eligible targets and methods for overloading
  • Additional C++ data types: Boolean and reference types
  • Practical exercise: Function overloading
  • Object-Oriented Programming (OOP)
  • Overview of OOP concepts
  • Class structures
  • Structure definitions
  • Access control specifications
  • Constructor functions
  • Default and deleted function specifiers
  • Initialization syntax and constructor initialization lists
  • Practical exercise: Class implementation
  • Memory management
  • Conventional memory allocation interactions
  • Practical exercise: Memory management

Module 2

  • Inheritance mechanisms
  • Construction sequences
  • Polymorphic behavior
  • Virtual functions, pure virtual functions, abstract classes, and interfaces
  • Access control specifications
  • Practical exercise: Inheritance with geometric shapes
  • Exception handling
  • Definition and scope of exceptions
  • Operational mechanics of exception handling
  • Guidelines for throwing and catching exceptions
  • Practical exercise: Exception handling
  • Memory exhaustion scenarios
  • Notification protocols for memory depletion
  • Handling strategies for memory exhaustion
  • Modern memory management techniques
  • Resource Acquisition Is Initialization (RAII)
  • Application of templates to modern memory management: Smart pointers
  • Standardized C++11 smart pointer implementations
  • Null pointer literals
  • Practical exercise: Smart pointer usage
  • Namespace organization
  • Practical exercise: Namespace implementation

Module 3

  • Automatic type deduction (auto)
  • Utilization of the auto keyword for type inference
  • Trailing return type syntax using auto
  • Enumerations
  • Strongly typed enumeration types
  • Constant expressions (constexpr)
  • Evolution of constant expression evaluation
  • Principles of constness
  • Differentiation between const and mutable qualifiers
  • Lambda expressions and function objects
  • Implementation of callable class types
  • Introduction to lambda expressions
  • Chrono library
  • Overview of the C++11 Chrono library for time management

Module 4

  • Type casting operations
  • Standard template library components
  • String management
  • Data containers
  • Vector implementation
  • Linked list implementation
  • Map implementation
  • Array implementation
  • Tuple implementation
  • Initializer list usage
  • Iterator design and application
  • Range-based for loop syntax
  • Standard algorithm implementations
  • Stream processing
  • Key language modifiers
  • Static storage duration
  • Explicit constructor invocation

Module 5

  • Move semantics implementation
  • Distinction between lvalues and rvalues
  • Application of rvalue references to move semantics
  • Type traits inspection
  • Compile-time type information retrieval
  • Concurrency management
  • Overview of C++11 threading capabilities, including async operations, future objects, and atomic type implementations
  • Variadic templates: Introduction to C++11 variadic template constructs

Requirements

A minimum of one year of professional experience with C++ is required for government applications.
 35 Hours

Number of participants


Price per participant

Testimonials (3)

Upcoming Courses

Related Categories