nullptr
Definisce una costante del puntatore null di tipo std::nullptr_t, che è convertibile in qualsiasi tipo di puntatore raw. Sebbene sia possibile utilizzare la parola chiave nullptr senza includere alcuna intestazione, se il codice utilizza il tipo std::nullptr_t, è necessario definirlo includendo l'intestazione <cstddef>.
Nota
La parola chiave nullptr viene definita in C++/CLI per le applicazioni di codice gestito e non è intercambiabile con la parola chiave nello standard ISO C++.Se il codice può essere compilato utilizzando l'opzione del compilatore /clr, che ha come obiettivo il codice gestito, utilizzare __nullptr in qualsiasi riga di codice in cui è necessario accertarsi che il compilatore utilizzi l'interpretazione in C++ nativo.Per ulteriori informazioni, vedere nullptr (Estensioni del componente C++).
Note
Evitare l'utilizzo di NULL o zero (0) come costante del puntatore null; nullptr è meno vulnerabile a un utilizzo improprio e funziona meglio nella maggior parte delle situazioni. Ad esempio, assegnando func(std::pair<const char *, double>), quindi chiamando func(std::make_pair(NULL, 3.14)) genera un errore di compilazione. La macro NULL si espande in 0, in modo che la chiamata std::make_pair(0, 3.14) restituisca std::pair<int, double>, che non è convertibile al tipo di parametro di func () std::pair<const char *, double>. func(std::make_pair(nullptr, 3.14)) chiamante viene compilato correttamente perché std::make_pair(nullptr, 3.14) restituisce std::pair<std::nullptr_t, double>, che è convertibile in std::pair<const char *, double>.