NULLとnullptrが混在していていいのか? in C++
ねににみみずです。ヌルポインタについての雑記です。
空値
C++には「空のポインタ」を示すNULLマクロがあります。そして、同じく「空のポインタ」を示すnullptrというキーワードもあります。
プリプロセスで整数型の0に置き換えられるNULLマクロでは「ポインタ型である」という情報が正確に伝達できないため(具体的にはオーバーロードの引数が整数型とポインタ型のときなどで困るらしい)、「空のポインタを表す型」としてstd::nullptr_t型およびnullptrキーワー