Dela via


void (C++)

När det används som en funktionsreturtyp anger nyckelordet void att funktionen inte returnerar något värde. När den används för en funktions parameterlista void anger att funktionen inte tar några parametrar. När den används i deklarationen av en pekare anger void att pekaren är "universell".

Om en pekares typ är void*kan pekaren peka på valfri variabel som inte deklareras med nyckelordet const eller volatile . En void* pekare kan inte derefereras om den inte är gjuten till en annan typ. En void* pekare kan konverteras till vilken annan typ av datapekare som helst.

I C++ kan en void pekare peka på en kostnadsfri funktion (en funktion som inte är medlem i en klass) eller till en statisk medlemsfunktion, men inte till en icke-statisk medlemsfunktion.

Du kan inte deklarera en variabel av typen void.

När det gäller format rekommenderar C++ Core Guidelines att du inte använder void för att ange en tom formell parameterlista. Mer information finns i C++ Core Guidelines NL.25: Använd void inte som argumenttyp.

Exempel

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

Se även

nyckelord
inbyggda typer