Basic concepts
| General topics | ||||||||||||||||
| Flow control | ||||||||||||||||
| Conditional execution statements | ||||||||||||||||
| Iteration statements (loops) | ||||||||||||||||
|
||||||||||||||||
| Jump statements | ||||||||||||||||
| Functions | ||||||||||||||||
| Function declaration | ||||||||||||||||
| Lambda function expression | ||||||||||||||||
inline
specifier
|
||||||||||||||||
| Dynamic exception specifications ( until C++17* ) | ||||||||||||||||
noexcept
specifier
(C++11)
|
||||||||||||||||
| Exceptions | ||||||||||||||||
| Namespaces | ||||||||||||||||
| Types | ||||||||||||||||
| Specifiers | ||||||||||||||||
|
||||||||||||||||
| Storage duration specifiers | ||||||||||||||||
| Initialization | ||||||||||||||||
| Expressions | ||||||||||||||||
| Alternative representations | ||||||||||||||||
| Literals | ||||||||||||||||
| Boolean - Integer - Floating-point | ||||||||||||||||
| Character - String - nullptr (C++11) | ||||||||||||||||
| User-defined (C++11) | ||||||||||||||||
| Utilities | ||||||||||||||||
| Attributes (C++11) | ||||||||||||||||
| Types | ||||||||||||||||
typedef
declaration
|
||||||||||||||||
| Type alias declaration (C++11) | ||||||||||||||||
| Casts | ||||||||||||||||
| Memory allocation | ||||||||||||||||
| Classes | ||||||||||||||||
| Class-specific function properties | ||||||||||||||||
|
||||||||||||||||
| Special member functions | ||||||||||||||||
|
||||||||||||||||
| Templates | ||||||||||||||||
| Miscellaneous | ||||||||||||||||
Cette section fournit les définitions de la terminologie spécifique et des concepts utilisés lors de la description du langage de programmation C++.
Un programme C++ est une séquence de fichiers texte (généralement des fichiers d'en-tête et de code source) qui contiennent des déclarations . Ils subissent une traduction pour devenir un programme exécutable, qui est exécuté lorsque l'implémentation C++ appelle sa fonction main .
Certains mots dans un programme C++ ont une signification particulière, et ceux-ci sont appelés mots-clés . D'autres peuvent être utilisés comme identifiants . Les commentaires sont ignorés pendant la traduction. Les programmes C++ contiennent également littéraux , dont les valeurs des caractères sont déterminées par les jeux de caractères et les encodages . Certains caractères dans le programme doivent être représentés avec des séquences d'échappement .
Les entités d'un programme C++ sont les valeurs, objets , références , structured bindings (depuis C++17) , result bindings (depuis C++26) , fonctions , énumérateurs , types , membres de classe, templates , spécialisations de templates , packs (depuis C++11) , et namespaces . Les macros du préprocesseur ne sont pas des entités C++.
Declarations peuvent introduire des entités, les associer à des noms et définir leurs propriétés. Les déclarations qui définissent toutes les propriétés requises pour utiliser une entité sont des définitions . Un programme doit contenir une seule définition de toute fonction ou variable non inline qui est odr-used .
Les définitions de fonctions incluent généralement des séquences de statements , dont certains incluent des expressions , qui spécifient les calculs à effectuer par le programme.
Les noms rencontrés dans un programme sont associés aux déclarations qui les ont introduits en utilisant la recherche de nom . Chaque nom n'est valide que dans une partie du programme appelée sa portée . Certains noms possèdent une liaison qui leur permet de faire référence aux mêmes entités lorsqu'ils apparaissent dans différentes portées ou unités de traduction.
Chaque objet, référence, fonction, expression en C++ est associé à un type , qui peut être fondamental , composé, ou défini par l'utilisateur , complet ou incomplet , etc.
Les objets déclarés et les références déclarées qui ne sont pas des non-static data members sont des variables .
Voir aussi
|
Documentation C
pour
Concepts fondamentaux
|