A nullptr egy kulcsszó , amelyet a C++11 -ben vezettek be a null mutatókonstans leírására. A típusa std::nullptr_t.
A nullptr egy r-érték [1] konstans .
A nullptr bevezetése előtt a 0 értékű NULL makrót használták a mutatók nullázására. Ez problémákat okozott (például a funkciók túlterhelésekor). A nullptr típusa std::nullptr_t, amely megoldja ezeket a problémákat. Vannak implicit konverziók a nullptr-ből bármilyen típusú null-mutatóra és bool -ra (false értékkel), de nem integrált típusokra [2] .
A visszafelé kompatibilitás érdekében a konstans 0nullmutatóként is használható.
void foo ( char * ); void foo ( int ); char * pc = nullptr ; // igaz int * pi = nullptr ; // true bool b = nullptr ; // jobb. b=hamis. int i = nullptr ; // hiba foo ( nullptr ); // hívja a foo(char *), nem a foo(int);