Bienvenue
Bienvenue sur ce cours de C++ (version C++2017) !
Il est destiné aux personnes ayant déjà programmé dans d'autres langages, et de préférence avec une mini-expérience en C ou en C++ : les concepts de fonctions, variables, types, classes et pointeurs ne seront pas expliqués.
J'ai présenté ce cours à l'oral, donc le contenu en ligne est assez théorique : je vous invite à regarder d'autres exemples si nécessaire et à essayer les challenges proposés. J'ai également créé un dépôt GitHub où je propose quelques exercices : https://github.com/Dwarfobserver/Exercices-Cpp . Il faut compléter le code pour passer tous les tests. Ce dépôt contient également les solutions des challenges.
Les challenges ne sont pas triviaux, et touchent généralement à plusieurs cours à la fois.
Le cours est organisé en petits chapitres classés dans une de ces trois catégories :
Le langage : La compilation, les librairies, les Undefined Behaviors, ...
Les abstractions : L'orienté objet, les templates, les exceptions, la concurrence, ...
Les performances : Les accès mémoire, la vectorisation, le temps de compilation, ...
Si vous ne savez pas quoi lire en particulier, voici l'ordre dans lequel je les ai présentés :
Langage - la compilation
Abstractions - l'orienté objet
Performances - introduction
Performances - les accès mémoire
Performances - les options du compilateur
Abstractions - les templates (1/2)
Performances - les indices du compilateur
Performances - la vectorisation
Langage - les catégories de classes
Abstractions - les move & smart pointers
Abstractions - les exceptions
Langage - les Undefined Behaviors
Abstractions - les lambdas & opérateurs
Abstractions - le multithreading
Abstractions - les templates (2/2)
Language - les bibliothèques
Performances - le temps de compilation
Si vous avez des questions, des remarques ou autre, vous pouvez me contacter via mon adresse mail : sidney.congard@gmail.com
Last updated