Freigeben über


nullptr

Legt eine NULL-Zeiger-Konstante vom Typ std::nullptr_t fest, der in einen beliebigen unformatierten Zeigertyp konvertiert werden kann. Sie können das Schlüsselwort nullptr zwar ohne Header verwenden, doch wenn der Code den Typ std::nullptr_t verwendet, müssen Sie es definieren, indem Sie den Header <cstddef> einschließen.

Hinweis

Das Schlüsselwort nullptr wird in C++/CLI auch für verwaltete Codeanwendungen definiert und ist nicht mit dem C++-ISO-Standard-Schlüsselwort austauschbar.Wenn der Code möglicherweise mit der Compileroption /clr kompiliert wird, die auf verwalteten Code ausgerichtet ist, verwenden Sie __nullptr in einer Codezeile, in der Sie sicherstellen müssen, dass der Compiler die systemeigene C++-Interpretation verwendet.Weitere Informationen finden Sie unter nullptr (Komponentenerweiterungen für C++).

Hinweise

Vermeiden Sie NULL oder 0 (0) als NULL-Zeiger-Konstante. nullptr ist weniger gefährdet, missbräuchlich verwendet zu werden, und funktioniert in den meisten Situationen besser. Beispiel: Wenn func(std::pair<const char *, double>) vorgegeben ist, verursacht der Aufruf von func(std::make_pair(NULL, 3.14)) einen Compilerfehler. Die Makro-NULL wird auf 0 erweitert, sodass der Aufruf std::make_pair(0, 3.14) den Wert std::pair<int, double> zurückgibt, der nicht in den Parametertyp std::pair<const char *, double> von func() konvertierbar ist. Durch Aufrufen von func(std::make_pair(nullptr, 3.14)) ist die Kompilierung erfolgreich, da std::make_pair(nullptr, 3.14) den Wert std::pair<std::nullptr_t, double> zurückgibt, der in std::pair<const char *, double> konvertiert werden kann.

Siehe auch

Referenz

C++-Schlüsselwörter

nullptr (Komponentenerweiterungen für C++)