ポインタリテラル nullptr - cppreference.com
提供: cppreference.com
構文
nullptr
|
(C++11以上) | ||||||||
説明
キーワード nullptr はポインタリテラルを表します。 これは std::nullptr_t 型の prvalue です。 nullptr からあらゆるポインタ型およびあらゆるメンバポインタ型への暗黙の変換が存在します。 同様の変換があらゆるヌルポインタ定数 (std::nullptr_t 型の値およびマクロ NULL など) に対して存在します。
例
どのように nullptr がテンプレート関数を通した転送を可能とするかをデモンストレーションします。
#include <cstddef> #include <iostream> template<class F, class A> void Fwd(F f, A a) { f(a); } void g(int* i) { std::cout << "Function g called\n"; } int main() { g(NULL); // Fine g(0); // Fine Fwd(g, nullptr); // Fine // Fwd(g, NULL); // ERROR: No function g(int) }
出力:
Function g called Function g called Function g called
キーワード
関連項目
参考文献
- C++11 standard (ISO/IEC 14882:2011):
- 4.10 Pointer conversions [conv.ptr]