> For the complete documentation index, see [llms.txt](https://cours-cpp.gitbook.io/resources/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://cours-cpp.gitbook.io/resources/untitled.md).

# Sommaire

[Bienvenue](https://cours-cpp.gitbook.io/resources)

[Introduction - Pourquoi le C++](/resources/introduction-pourquoi-le-c++.md)

### [Langage](/resources/introduction.md)

1. [La compilation](/resources/introduction/la-compilation.md)
2. [Les catégories de classes](/resources/introduction/les-categories-de-classes.md)
3. [Les Undefined Behaviors](/resources/introduction/les-undefined-behaviors.md)
4. [Les bibiothèques](/resources/introduction/les-bibliotheques.md)

### [Abstractions](/resources/abstractions.md)

1. [L'orienté objet](/resources/abstractions/loriente-objet.md)
2. [Les templates (1/2)](/resources/abstractions/les-templates-1-2.md)
3. [Les move & *smart pointers*](/resources/abstractions/les-move-semantics.md)
4. [Les exceptions](/resources/abstractions/les-exceptions.md)
5. [Les lambdas & opérateurs](/resources/abstractions/les-lambdas-and-operateurs.md)
6. [Le multithreading](/resources/abstractions/la-concurrence.md)
7. [Les templates (2/2)](/resources/abstractions/les-templates-2-2.md)

### [Performances](/resources/performances.md)

1. [Introduction](/resources/performances/introduction.md)
2. [Les accès mémoire](/resources/performances/les-acces-memoire.md)
3. [Les options du compilateur](/resources/performances/les-flags-de-compilateur.md)
4. [Les indices au compilateur](/resources/performances/les-indices-au-compilateur.md)
5. [La vectorisation](/resources/performances/la-vectorisation.md)
6. [Le temps de compilation](/resources/performances/les-temps-de-compilation.md)

### Challenges

La difficulté est indiquée par le nombre d'étoiles (ils restent des challenges et ne sont pas triviaux).

1. [tagged\_ptr](https://cours-cpp.gitbook.io/resources/introduction/les-categories-de-classes#challenge) (\*\*)
2. [to\_string](https://cours-cpp.gitbook.io/resources/abstractions/les-templates-1-2#challenge) (\*\*\*)
3. [force\_move](https://cours-cpp.gitbook.io/resources/abstractions/les-move-semantics#challenges) (\*)
4. [unique\_function](https://cours-cpp.gitbook.io/resources/abstractions/les-move-semantics#challenges) (\*\*\*)
5. [make\_overload](https://cours-cpp.gitbook.io/resources/abstractions/les-lambdas-and-operateurs#challenge) (\*\*\*)
6. [thread\_pool](https://cours-cpp.gitbook.io/resources/abstractions/la-concurrence#challenges) (\*\*)
7. [ring\_buffer](https://cours-cpp.gitbook.io/resources/abstractions/la-concurrence#challenges) (\*\*)
8. [is\_iterable, is\_iterator](https://cours-cpp.gitbook.io/resources/abstractions/les-templates-2-2#challenges) (\*\*)
9. [nth\_times](https://cours-cpp.gitbook.io/resources/abstractions/les-templates-2-2#challenges) (\*)
10. [alloca\_aligned](https://cours-cpp.gitbook.io/resources/performances/les-acces-memoire#challenges) (\*)
11. [block\_allocator](https://cours-cpp.gitbook.io/resources/performances/les-acces-memoire#challenges) (\*\*)

[Solutions (lien externe)](https://github.com/Dwarfobserver/Exercices-Cpp)
