C++ Language

C++ is a multi-platform programming language with an objects orientation using classes.

Prerequisites:

Logic of Programming course or equivalent knowledge.

Acquired Skills:

At the end of this course the student will have acquired the skills to create programs in a visual environment with access to a database of information and objects orientation.

Curriculum Material:

The language and teaching techniques are geared to the course's final use. It includes explanatory exercises and examples.

Course Topics:

  • Classes and types of variables; basic and primary types
  • Processing flux control : - modules, functions, laces, blocks, decisions
  • Operators
  • The pre-processor; directives of pre-processing; standardization of constants
  • Understanding the global memory , the battery and the heap; vectors, matrixes and indicators.
  • Indicators and references; the specificator const.
  • Function Indicators
  • Creating types thru structures, classes, unions, and enumerators; difference between a structure in C Language and a structure in C++ Language
  • When to use class, when to use struct
  • Library C++ standard: inherited functions, of C library; the streams of input and output of C++; handling of archives
  • Avoiding break-ups of the buffer

Structures And Classes:

  • Concepts of structured and modular programming; concept of orientation to objects (OOP) and its implementation in C++
  • Encapsulating : namespace; struct and class; nested types
  • Creating members of data and member-functions; defining members access protection.
  • Constructive functions and destructive functions; Constructors, and explicit constructors
  • The indicator this; Defining the indicator this as const; mutable specification for members of data
  • Friendly classes and functions
  • Identity; static members; constant members
  • Inheritance: interdependency between inheritance and encapsulation
  • Restriction of protected access; public, private and protected derivation; simple inheritance and multiple inheritance
  • Polymorphism; Interdependency between inheritance and polymorphism;redefinition of functions; virtual functions and pure virtual functions; redefinition of virtual functions
  • The OOP and the line of assembly technique; developing software components thru classes and objects in C++
  • Utilizing virtual functions to create interfaces, frameworks & events
  • Handling of exceptions: throw, try, catch( ), catch(...); set_terminate, set_unexpected

Templates:

  • What are templates; understanding the parameters of types; templates of classes and templates of functions
  • Library C++ Standard: what is the library of templates STL (Standard Template Library); the types of string and wstring; : the templates basic string, list, vectors, map, multimap, set, multiset and others; functions and generic algorithms ; Templates for
  • How operators collaborate in generic programming thru templates
  • Using smart pointers
  • Understanding the use of iterator; the various types of iterator; examples of use of the mutable specificator
  • Understanding the use of the allocator
  • Polymorphism when compiling and when executing
  • Templates of conversion of type (casts): dynamic_cast, static_cast, reinterpret_cast, const_cast; creating personalized casts
  • Understanding C++ as a multi-paradigmatic language, with support being more than a programming technique, going beyond the Orientation to Objects.

Certificate of Completion

At the end of the course the student will receive our certificate of completion for this training.