Curso C++ Programming for OO Developers
32hVisão Geral
Este curso é destinado a desenvolvedores orientados a objetos (por exemplo, Java ou C#) que precisam se familiarizar rapidamente com C++. O curso abrange as construções e técnicas de programação C++ rapidamente, focando nas diferenças entre C++ e outras linguagens OO.
Publico Alvo
- Este curso de treinamento é destinado a desenvolvedores OO que precisam fazer a transição para C++.
Pre-Requisitos
- Experiência no uso de uma linguagem OO contemporânea, como Java ou C#, ou familiaridade com a linguagem de programação C.
Informações Gerais
Carga Horária: 32h
- Se noturno este curso é
ministrado de Segunda-feira à sexta-feira, das 19h às 23h
- Se aos sábados este curso é
ministrado das 9h às 18h
- Se in-company por favor
fazer contato para mais detalhes.
Formato de
entrega:
- 100% on-line ao vivo, via
Microsoft Teams na presença de um instrutor/consultor ativo no mercado.
- Nota: não é curso
gravado.
Lab:
- Laboratório + Exercícios
práticos
Materiais
Português | InglêsConteúdo Programatico
C++ Language Fundamentals
- C++ statements
- Code blocks
- Primitive data types
- Literals and variables
- Converting data types
- Operators
- Decision making: if, if-else, and switch
- Looping: for loops, while loops, and do-while loops
Defining Classes
- Syntax of class declarations
- Public and private members
- Creating objects
Implementing Class Functionality
- Function overloading
- Default arguments
- Anonymous arguments
- Ambiguities
- Resolving scope conflicts
- Using the this pointer
Defining Constructors and Destructors
- Overview of an object's lifetime
- Defining constructors
- Constructor chaining
- Defining destructors
Miscellaneous Language Features
- Defining enumerations
- Using the const keyword effectively
- Defining inline member functions
- Using reference variables
Composite Classes
- Overview of composition
- Defining composite classes
- Constructing composite objects
- Using member initialization lists
Associative Classes
- Overview of delegation
- Dynamic associations;
- Lifetime of associative objects
- Constant associations
Operator Overloading
- Overview of operator functions
- Defining unary operators
- Defining binary operators
- Defining the [] operator
- Defining input and output operators
Defining Class-Wide Members
- Overview
- Static data members
- Static member functions
- Nested types
- Friend classes
Creating Collections of Objects
- The need for collections
- Introduction to template classes
- Using vector and list
- Using iterators
- Introduction to template functions
- Using the Standard Template Library
Copying and Conversions
- The copy assignment operator
- Copy constructors
- Conversions to a class object
- Conversions from a class object
Inheritance
- Recap of inheritance principles
- Defining a subclass;
- Defining protected members
- Scoping and initialisation
- Multiple inheritance
- Abstract base classes
Polymorphism
- Recap of polymorphism
- Defining virtual functions
- Virtual destructors
- Pure virtual functions and abstract classes