Code: PRG300
Duur in dagen: 5
Download: Open Rooster.pdf
Download: Infosheet
€ 2200

Cursus C++ Programmeren

11-12 t/m 15-12-2017 startgarantie
08-01 t/m 12-01-2018
12-02 t/m 16-02-2018
12-03 t/m 16-03-2018
09-04 t/m 13-04-2018
Uw startdatum
Regio:

Doelgroep C++ Opleiding

Cursus C++ Programmeren Deze cursus is bedoeld voor developers die in C++ willen leren programmeren en anderen die C++ code willen begrijpen.

Voorkennis voor de Cursus C++

Om aan deze cursus te kunnen deelnemen is kennis van en ervaring met programmeren in C vereist.

Uitvoering Training Cursus C++

De theorie wordt behandeld aan de hand van presentatie slides en wordt afgewisseld met oefeningen. Illustratieve demo’s worden gebruikt om de behandelde begrippen te verduidelijken. De cursustijden zijn van 9.30 tot 16.30.

Certificering C++

De deelnemers krijgen na het goed doorlopen van de training een officieel certificaat C++ Programmeren.

Inhoud van de Training C++

In de cursus C++ Programmeren leren de deelnemers programmeren in de C++ programmeertaal. Aan de orde komen de C++ 11 en de C++ 14 standaard. Eerst worden de verschillen tussen C en C++ besproken voor wat betreft declaraties van variabelen, formatted output met de stream IO library, namespaces, function overloading en default function parameters. Vervolgens wordt aandacht besteed aan de nieuwe C++ reference variabelen. Zowel Lvalue als Rvalue references worden besproken. Een belangrijk onderdeel van de cursus is het C++ class concept en de C++ implementatie van object georiënteerde principes als abstraction en encapsulation. Ook wordt aandacht besteed aan dynamische geheugen allocatie met new en delete en de rol van assignment operators en copy en move constructors. Ook speciale kenmerken van classes, zoals statics, friends en iterators worden besproken. Vervolgens staan ook de object georiënteerde principes van inheritance en polymorfisme op het programma. Daarbij komen de concepten van virtual functions, v-tables, dynamic binding en abstract classes ter sprake. In C++ is het mogelijk om standaard operatoren een andere betekenis te geven en dit fenomeen wordt besproken in de module operator overloading. Vervolgens komen belangrijke kenmerken van de C++ standard library aan bod zoals de String class en de principes van C++ templates en de Standard Template Library (STL). Tot slot wordt aandacht besteed aan exception handling en hoe dit is geïmplementeerd in C++.

Module 1 : Intro C++

Module 2 : Variables and Types

Module 3 : References

Intro C++
C++ TimeLine
Comments in C++
Namespace std
Output and Error Stream
Standard Input Stream
cin and Strings
Formatted Output
Variable Declaration
Scope Resolution Operator
Inline Functions
Default Function Arguments
Overloading Functions
Range based for loop
Standard Types
Type Inference
Auto Keyword
Deduction with decltype
Initialization
Null Pointer Constant
Enumerations
Strongly Types Enums
Variable Scope
Namespaces
Using keyword
Using Directive
Block Usage
User Defined Literals
Raw String Literals
Storage Classes
const Qualifier
const Pointers
References
Reference Initialization
References and Pointers
Rvalues and Rvalues in C
Rvalues and Rvalues in C++
Reference to Constant
Passing References
Comparison Parameter Passing
References as Return Values
Potential Error
Returning lvalue
Returning Reference to Global
Rvalue References
Rvalue Reference Syntax
Comparing Reference Types
Rvalue Reference Usage

Module 4 : Classes

Module 5 : Dynamic Memory Allocation

Module 6 : Inheritance and Polymorphism

Classes and Objects
Example Class and Objects
Classes in C++
New Data Type in C
Class Declaration
Formal Class Declaration Syntax
Class Sections
Constructor and Destructor
Uniform Initialization
Header and Sources Files
Class Implementation
Class Usage
Advantages Access Functions
References to private Data
this Pointer
static Members
Constant Objects
Member Objects
Composition Example
Friends
Dynamic Memory Allocation
new Operator
delete Operator
Dynamic Arrays
Classes with Pointer Data
Assignment Operator
Self-Assignment Problem
Chained Assignments
Assignment and Initialization
Initialization with Copy Constructor
Copy Constructors
Passing Objects
Returning Objects
Passing References to Objects
Move Constructor
Move Semantics
Move Assignment Operator
Perfect Forwarding
Delegating Constructors
Inheritance
Type Relations in C and C++
Derived Classes in C++
Class Hierarchy
Redefining Member Functions
Calling Redefined Members
Derived Class Constructors
Base – Derived Class Conversion
Pointer Conversions
Virtual Functions
Polymorphism
Dynamic Binding
Virtual Function Implementation
Virtual Function Table
Pure Virtual Functions
Abstract Classes
Multiple Inheritance
Duplication of Data Members
Virtual Derivation

Module 7 : Operator Overloading

Module 8 : Exception Handling

Module 9 : Templates

Operator Overloading
Overloading for Numeric Types
Complex Type Example
Overloading Rules
Overloading Restrictions
Not Overloadable Operators
When not to Overload
Numeric Class Overloading
Fraction Class Example
Operators as Friend
Unary Overloading Operator
Exception Handling in C++
Memory Exhaustion Handling
Exception Handling Principles
Throwing Exceptions
try Block
catch Handlers
Division By Zero Example
Benefits Exception Handling
Multiple catch Handlers
Template Array Class
Exceptions Array Class
Matching
catch Order
throw List
What are Templates?
Need for Templates
Template Functions
Template Specialization
Template Syntax
Template Function Usage
Using Function Templates
Template Parameter List
Class Templates
Template Member Functions
Implementing Member Functions
Template Class Usage
Template Parameter Scope
Template Function Statics
Template Class Statics
Inclusion Compilation Model
Templates and Friends
Standard Template Library
Why STL?
STL Core Components
STL Library Components
STL Containers
Sequential Containers
Vector Container
Deque Container
List Container
STL Iterators
STL Algorithms
STL Allocators
SLT Pairs
STL Operators
STL Header Files

Kantooradres:
SpiralTrain BV

Gebouw "De Sijnsmeester"
Standerdmolen 8 – 1.11
3995 AA Houten

IP Computer Training Centrum
Diemerhof 32-36
1112 XN Diemen

020 7600027
http://www.ip-computer-training-centrum.nl

Compu Act Opleidingen
Slinge 303
3085 ER Rotterdam

023 - 551 3409
www.computertraining.nl

Trainspot
Kleine Singel 33
3572 CG Utrecht

030 - 737 05 81
http://www.trainspot.nl

IP Computer Training Centrum
Leenderweg 292
5644 AE Eindhoven

040 - 256 65 20
http://www.ip-computer-training-centrum.nl