Dans vos locaux
Pour ancrer les apprentissages et encourager la dynamique collective.
Maîtrisez pointeurs intelligents, idiome RAII, templates génériques, bibliothèque standard, puis concepts, structured bindings et ranges apportés par C++17, C++20 et C++23.
template <std::integral T>
class Buffer {
std::vector<T> donnees_;
public:
explicit Buffer(std::size_t taille) : donnees_(taille) {}
auto vue() const {
return donnees_
| std::views::filter([](T v) { return v > 0; })
| std::views::transform([](T v) { return v * 2; });
}
};Cette formation complète conduit du C++ classique au C++ contemporain, sans sacrifier la compréhension des mécanismes bas niveau qui font sa spécificité. Elle couvre la gestion mémoire manuelle et son remplacement progressif par les pointeurs intelligents et l'idiome RAII, la programmation orientée objet (héritage, polymorphisme, classes abstraites), les templates et la généricité, ainsi que les conteneurs et algorithmes de la bibliothèque standard. Une large partie est consacrée aux apports successifs de C++17, C++20 et C++23 : structured bindings, concepts pour contraindre les templates, ranges pour composer des traitements sur des collections, et améliorations de la gestion des erreurs, qui permettent d'écrire un code plus sûr sans perdre en performance. Elle s'adresse aux développeurs devant écrire ou maintenir du code C++, ainsi qu'aux ingénieurs logiciel embarqué ou calcul.
Les objectifs
Développer en C++ en maîtrisant objets, mémoire et bibliothèque standard, et exploiter les apports de C++17 à C++23.
Public visé
Développeurs devant écrire ou maintenir du code C++, ingénieurs logiciel embarqué ou calcul.
Prérequis
Connaissance de l'algorithmique et d'un langage de programmation. Une base en C est un plus.
Pour ancrer les apprentissages et encourager la dynamique collective.
Pour allier flexibilité et interactions en temps réel avec le formateur.
Pour favoriser la concentration, les échanges et le confort des apprenants.