Formation C++ 11 pour développeur C++


  • TIRER PARTI DES NOUVELLES FONCTIONNALITÉS AVEC LA VERSION 2011 DE C++
REFERENCE
 
 
DPNC
DUREE
 
 
3 jours
TARIFS
 
 
1690 € HT
Niveau : Intermédiaire
Cours à distance: Possible
OBJECTIFS :
 

Cette formation C++11 vous présentera sous un angle conceptuel et opérationnel les nouveautés du langage C++ dans sa version 2011 et plus généralement, au-delà des nouveautés, vous disposerez d’une vue complète sur le langage C++. Après avoir présenté les différences au niveau de l’environnement de développement et des compilateurs, nous présentons le positionnement des bibliothèques BOOST et STL. Les nouveautés du langage C++11 sont suffisamment conséquentes pour être réunies dans un chapitre dédié tout comme les nouveautés au niveau des classes. Vous apprenez à utiliser la puissance des lambda-expressions pour combiner les avantages des pointeurs et des objets de fonction tout en évitant leurs inconvénients. Vous allez comprendre les apports dans la mise en œuvre de la puissante bibliothèque de templates STL (Standard Template Library) notamment pour les algorithmes et structures autour des vecteurs, listes, file, et piles. Vous saurez gérer le temps de façon efficace avec le namespace chrono et enfin la programmation des threads vous permettra de savoir mettre en œuvre la programmation parallèle en C++.

PRÉ-REQUIS :
 

Bonnes connaissances du langage C++. Une expérience de développeur en programmation C++ est recommandée pour tirer pleinement profit de cette formation.
Avoir suivi le stage "Programmation en C++" (DPOC) ou posséder un niveau équivalent est un minium.

PUBLIC :
 

Cette formation C++ s'adresse aux développeurs d'applications.

PROGRAMME :
 

Bref historique des versions de C++ passées, présentes, futures

C++98, C++03, C++0x, C++11, C++14, C++17

Les outils de développement

Les versions de GCC
Les versions d’Eclipse
Les versions de Visual Studio
Les librairies BOOST et STL : convergence ?

Travaux pratiques : 

Test de la version installée

Les nouveautés du langage C++ 11

Les espaces de nom inline
Les chaînes litérales brutes et Unicode
Les types POD (Plain Old Data) revisités
La constantes nullptr
Les expressions constantes généralisées (constexpr)
Le « range-based » for
Les déclarations étendues de l’amitié
Les litéraux définis par l’utilisateur
Les énumérations fortement typées
L’inférence de type : auto et decltype
Tableaux statiques : std ::array
Nouvelle syntaxe pour le type de retour des fonctions
Le mot-clé noexcept en remplacement de throw

Travaux pratiques : 

Mise en œuvre des nouveautés

Les nouveautés au niveau des classes en C++11

Initialisation des données membres non-statiques
Constructeurs délégués
Les initialiseurs de conteneurs et de données membres
Les rvalues-reference et la sémantique de déplacement (move constructeur et surcharge de l’opérateur d’affectation par déplacement)
Les directives =delete et =default
La surcharge explicite de la virtualité (override)
Les méthodes et les classes « final »

Travaux pratiques :

Forme canonique d’une classe avec la sémantique de déplacement

Vers la programmation fonctionnelle en C++11

Les lambda-expressions : syntaxe, typage, utilisation
Intérêt de « auto » et « decltype » avec les lambda-expressions
La gestion des fermetures (closures) liées au contexte

Travaux pratiques : 

Mise en œuvre des lambda-expressions

Nouveautés dans les templates avec C++11

Alias de template (using)
Nombre d’arguments variables (variadic template)
Les types locaux et non nommés comme arguments template

Nouveautés dans la STL

Nouveaux conteneurs : unordered_XXX, forward_list, array
Nouveaux algorithmes  

Gestion mémoire et STL

Les pointeurs intelligents : unique_ptr (auto_ptr est obsolète) , weak_ptr, shared_ptr.
Utilisation avec la STL

Travaux pratiques : 

Mise en œuvre des pointeurs intelligents

Le namespace chrono

Les classes duration et time_point
Les horloges system_clock, steady_clock et high_resolution_clock
Les traits : treat_as_floating_point, duration_values, common_type (duration)
Les fonctions duration_cast et time_point_cast
Les typedefs d’instantiation de la classe duration : hour, minute, etc.

Travaux pratiques : 

Mise en œuvre

Utilisation des threads

Le mot-clé thread_local
Déclarer et exécuter un thread. Utilisation de join
Fonctions gérant le thread courant : yield , get_id , sleep_for, sleep_until
Exclusion mutuelle : mutex, timed_mutex, etc.
Gestion des mutex : lock_guard, unique_lock, etc.
Algorithmes génériques de verrou : try_lock, lock
Appel de fonction unique : once_flag, call_once
Les variables conditionnelles
Futures/Asynchronisme : promise, packaged_task, future, shared_future, async, etc.
Future errors
La fonction hardware_concurrency

Travaux pratiques : 

Mise en œuvre des threads

TRAVAUX PRATIQUES :
 

De nombreux Travaux Pratiques viendront illustrer cette formation C++11. Vous retrouverez le descriptif des travaux pratiques généralement réalisés, à la fin du descriptif du cours.

S'INSCRIRE À CETTE
FORMATION C++ 11
Cliquez sur une date pour vous inscrire
Information pratiques sur
LA FORMATION
Lieu de la formation Paris - LA DEFENSE
Nous contacter 01 43 34 90 94
CETTE FORMATION SUR-MESURE Ce cours est réalisable en intra-entreprise, dans vos locaux ou nos salles de cours CONTACTER NOTRE SERVICE INTRA
D'autres formations
SUR LE MÊME THÈME

2 j

 

Développement

C++ Approfondissement
Cette formation C++ Approfondissement a pour objectif de consolider une formation de base en C++. Elle peut servir notamment à rafraîchir les concepts vus lors d'une...

3 j

 
Cette formation vous prépare au passage de la certification "C++ Certified Associate Programmer"  du C++ Institute. Elle consiste à effectuer des révisions...

4 j

 
Qt5 est un Framework destiné au développement d'applications graphiques en C++. Sa facilité de mise en œuvre et sa polyvalence le rendent incontournable. Qt5...

5 j

 

Développement

Programmation en C
Ce stage intensif vous permettra d'acquérir une connaissance réellement opérationnelle du langage. Il vous expliquera le fonctionnement des différents...
Plus de formations sur le même thème

Des questions ?

ON VOUS RAPPELLE

 

0

Formations
Informatique
et Management
en ligne à ce jour

+ 0

Stagiaires dans nos
salles de cours sur
l'année

0%

De participants
satisfaits ou très
satisfaits de nos
formations

0

Formateurs experts
validés PLB