nullptr

Ключевое слово nullptr указывает константу указателя NULL типаstd::nullptr_t, которая преобразуется в любой необработанный тип указателя. Хотя вы можете использовать ключевое слово nullptr без включения заголовков, если код использует типstd::nullptr_t, необходимо определить его, включив заголовок<cstddef>.

Примечание.

nullptr Ключевое слово также определен в C++/CLI для управляемых приложений кода и не взаимозаменяется с ключевое слово СТАНДАРТА ISO. Если код может быть скомпилирован с помощью /clr параметра компилятора, который предназначен для управляемого кода, используйте __nullptr в любой строке кода, где необходимо гарантировать, что компилятор использует собственную интерпретацию C++. Дополнительные сведения см. в статьях nullptr (C++/CLI и C++/CX).

Замечания

Избегайте использования NULL или нуля (0) в качестве константы указателя null; nullptr менее уязвимы для неправильного использования и лучше работает в большинстве ситуаций. Например, если для функции func(std::pair<const char *, double>) произвести вызов func(std::make_pair(NULL, 3.14)), возникнет ошибка компилятора. Макрос NULL расширяется0, чтобы возвращать std::pair<int, double>вызовstd::make_pair(0, 3.14), который не преобразуется в std::pair<const char *, double> тип параметра в func. Вызов func(std::make_pair(nullptr, 3.14)) успешно компилируется, поскольку std::make_pair(nullptr, 3.14) возвращает значение std::pair<std::nullptr_t, double>, которое допускает преобразование в тип std::pair<const char *, double>.

См. также

Ключевые слова
nullptr (C++/CLI и C++/CX)