Déclarations
Les déclarations présentent de nouveaux noms dans un programme.Les rubriques abordées dans cette section incluent les utilisations suivantes pour les déclarations.
spécifiez classe de stockage, type, et liaison pour un objet ou une fonction.
déclarez fonction comme inline ou virtual.
Associez un nom à une constante (déclaration d'énumération ).
Déclarez nouveau type (class, struct, ou une déclaration d' union ).
Spécifiez un synonyme d'un type (déclaration detypedef ).
spécifiez l'espace de noms.
En plus de tapez un nouveau nom, une déclaration spécifie comment un identificateur doit être interprète par le compilateur.Les déclarations ne réservent pas automatiquement le stockage associé à l'identificateur.Stockage de la réserve de définitions.
[!REMARQUE]
la plupart des déclarations sont également des définitions.Les déclarations qui ne sont pas des définitions incluent des déclarations de classe sans la liste des membres, et déclarations de fonction sans corps de la fonction.
une déclaration peut être un de :
[ déclassement-spécificateurs ] [ liste de déclarateur ] ;
définition de fonction
liaison-spécification
modèle-spécification
explicite-modèle-instanciation
explicite-modèle-spécialisation
espace de noms-définition
espace de noms-alias-définition
déclaration using
directive using
ASM-définition
Le composant de déclassement-spécificateurs d'une déclaration est affiché comme facultatif ; toutefois, il peut être omis uniquement dans les déclarations des types ou des énumérations de classe.
Les déclarateurs du composant du liste de déclarateur contiennent des noms sous-jacents déclarés.Bien que liste de déclarateur soit comme indiqué facultatif, il peut être omis uniquement dans les déclarations ou les définitions d'une fonction.
[!REMARQUE]
la déclaration d'une fonction est souvent appelée un prototype.Un prototype fournit des informations de type à propos de les arguments et le type de retour de la fonction.En outre, un prototype permet au compilateur d'effectuer des conversions correctes et fournit la sécurité de type.
les déclarations se produisent dans une portée.La portée en contrôler la visibilité du nom déclaré et de la durée de l'objet défini, le cas échéant.Pour plus d'informations sur la façon dont les règles de portée interagissent avec les déclarations, consultez Portée.
Une déclaration de l'objet est également une définition à moins que celle-ci ne contienne le spécificateur de classe de stockage d' extern décrit dans Spécificateur de classe de stockage.Une déclaration de fonction est également une définition à moins d'être un prototype.un prototype est un en-tête de fonction sans corps de la fonction définissant.La définition d'un objet entraîne l'allocation de stockage et les initialisations appropriées pour cet objet.
Informations supplémentaires
Pour plus d'informations sur définition de fonction, consultez Définitions de fonctions C++.
Pour plus d'informations sur liaison-spécification, consultez Caractéristiques de liaison.
Pour plus d'informations sur modèle-spécification, explicite-modèle-instanciation et explicite-modèle-spécialisation, consultez Modèles.
Pour plus d'informations sur espace de noms-définition et espace de noms-alias-définition, consultez Les espaces de noms (C++).
Pour plus d'informations sur ASM-définition, consultez __asm.