Loading AI tools
Из Википедии, свободной энциклопедии
nullptr — ключевое слово, введенное в C++11 для описания константы нулевого указателя. Её тип — std::nullptr_t
.
nullptr является r-value[англ.] литералом[1].
До введения nullptr для обнуления указателей использовался макрос NULL со значением 0 — целым типом. Это вызывало проблемы (например, при перегрузке функций). Тип nullptr — std::nullptr_t, что решает эти проблемы. Существуют неявные преобразования nullptr к нулевому указателю любого типа и к bool (со значением false), но не к целочисленных типам[2].
В целях обеспечения обратной совместимости константа 0
также может использоваться в качестве нулевого указателя.
void foo(char *);
void foo(int);
char *pc = nullptr; // верно
int *pi = nullptr; // верно
bool b = nullptr; // верно. b = false.
int i = nullptr; // ошибка
foo(nullptr); // вызывает foo(char *), а не foo(int);
Seamless Wikipedia browsing. On steroids.
Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.
Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.