void (C++)

Cuando se usa como un tipo de valor devuelto de función, la palabra clave void especifica que la función no devuelve ningún valor. Cuando se usa para la lista de parámetros de una función, void especifica que la función no toma ningún parámetro. Cuando se usa en la declaración de un puntero, void especifica que el puntero es "universal".

Si el tipo de puntero es void*, el puntero puede apuntar a cualquier variable que no se declare con la palabra clave const o volatile. Un puntero void* no se puede desreferenciar a menos que se convierta en otro tipo. Un puntero void* se puede convertir en cualquier otro tipo de puntero de datos.

En C++, un puntero void puede apuntar a una función libre (una función que no es miembro de una clase) o a una función miembro estática, pero no a una función miembro no estática.

No se puede declarar una variable de tipo void.

Como cuestión de estilo, las directrices básicas de C++ recomiendan no usar void para especificar una lista de parámetros formal vacía. Para obtener más información, vea Directrices principales de C++ NL.25: No usar void como un tipo de argumento.

Ejemplo

// 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;
}

Consulte también

Palabras clave
Tipos integrados