va_start
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Défini dans l'en-tête
<cstdarg>
|
||
|
void
va_start
(
std
::
va_list
ap, parm_n
)
;
|
||
La macro
va_start
permet d'accéder aux arguments variables suivant l'argument nommé
parm_n
.
va_start
doit être invoqué avec une instance d'un objet
va_list
valide
ap
avant tout appel à
va_arg
.
|
Si le parm_n est une expansion de paquet ou une entité résultant d'une capture lambda , le programme est mal formé, aucun diagnostic requis. |
(depuis C++11) |
Si parm_n est de type référence, ou d'un type non compatible avec le type résultant des promotions d'arguments par défaut , le comportement est indéfini.
Table des matières |
Paramètres
| ap | - | un objet du type va_list |
| parm_n | - | le paramètre nommé précédant le premier paramètre variable |
Valeur développée
(aucun)
Notes
va_start
est requis pour prendre en charge
parm_n
avec l'opérateur
operator&
surchargé.
Exemple
Sortie :
150
Rapports de défauts
Les rapports de défauts modifiant le comportement suivants ont été appliqués rétroactivement aux normes C++ précédemment publiées.
| DR | Applicable à | Comportement publié | Comportement corrigé |
|---|---|---|---|
| CWG 273 | C++98 |
il n'était pas clair si
va_start
devait
supporter les parm_n avec
operator&
surchargé
|
requis |
| LWG 2099 | C++98 |
le comportement était indéfini si
parm_n
était
déclaré avec un type fonction, tableau ou référence |
le comportement est indéfini si
parm_n est de type référence |
Voir aussi
|
accède à l'argument suivant de la fonction variadique
(macro de fonction) |
|
|
termine le parcours des arguments de la fonction variadique
(macro de fonction) |
|
|
Documentation C
pour
va_start
|
|