void (C++)

Lorsqu’elle est utilisée comme type de retour de fonction, la void mot clé spécifie que la fonction ne retourne pas de valeur. Lorsqu’elle est utilisée pour la liste des paramètres d’une fonction, void spécifie que la fonction ne prend aucun paramètre. Lorsqu’il est utilisé dans la déclaration d’un pointeur, void spécifie que le pointeur est « universel ».

Si le type d’un pointeur est void*, le pointeur peut pointer vers n’importe quelle variable qui n’est pas déclarée avec la ou volatile la const mot clé. Un void* pointeur ne peut pas être déréférencement, sauf s’il est converti en un autre type. Un void* pointeur peut être converti en n’importe quel autre type de pointeur de données.

En C++, un void pointeur peut pointer vers une fonction libre (fonction qui n’est pas membre d’une classe) ou vers une fonction membre statique, mais pas vers une fonction membre non statique.

Vous ne pouvez pas déclarer une variable de type void.

En ce qui concerne le style, les recommandations de base C++ vous recommandent de ne pas utiliser void pour spécifier une liste de paramètres formelle vide. Pour plus d’informations, consultez C++ Core Guidelines NL.25 : Ne pas utiliser void comme type d’argument.

Exemple

// void.cpp

void return_nothing()
{
   // A void function can have a return with no argument,
   // or no return statement.
}

void vobject;   // C2182
void *pv;   // okay
int *pint; int i;
int main()
{
   pv = &i;
   // Cast is optional in C, required in C++
   pint = (int *)pv;
}

Voir aussi

Mots clés
Types intégrés