nullptr
Określa stałą pustego wskaźnika typu std::nullptr_t, która jest konwertowana na dowolny typ surowego wskaźnika. Chociaż można użyć słowa kluczowego nullptr bez dołączania dodatkowych nagłówków, jeśli kod użytkownika używa typu std::nullptr_t, to należy zdefiniować go poprzez dołączenie nagłówka <cstddef>.
[!UWAGA]
Słowo kluczowe nullptr jest również określone w C++/CLI do zarządzania kodem aplikacji i nie jest zamiennie ze słowem kluczowym ISO Standard C++.Jeśli kod może być skompilowany przy użyciu opcji kompilatora /clr, która jest przeznaczona dla kodu zarządzanego, to można użyć __nullptr w każdym wierszu kodu, gdzie należy zagwarantować, że kompilator używa macierzystej interpretacji C++.Aby uzyskać więcej informacji, zobacz nullptr.
Uwagi
Należy unikać NULL lub zera (0), jako stałego pustego wskaźnika; nullptr jest mniej podatne na niewłaściwe użycie i działa lepiej w większości sytuacji. Na przykład, otrzymując func(std::pair<const char *, double>), następnie wywołanie func(std::make_pair(NULL, 3.14)) powoduje wystąpienie błędu kompilatora. Makro NULL rozszerza się do 0, tak aby wywołanie std::make_pair(0, 3.14) zwracało std::pair<int, double>, które nie jest konwertowane na typ parametru func() std::pair<const char *, double>. Wywołanie func(std::make_pair(nullptr, 3.14)) kompiluje się pomyślnie ponieważ std::make_pair(nullptr, 3.14) zwraca std::pair<std::nullptr_t, double>, które jest konwertowane na std::pair<const char *, double>.