cpp/types/NULL

The macro is an implementation-defined null pointer constant, which may be

A null pointer constant may be implicitly converted to any pointer and pointer to member type; such conversion results in the null pointer value of that type. If a null pointer constant has integer type, it may be converted to a prvalue of type std.