C++03 $4.10- "The conversion of a null pointer constant to a pointer to cv-qualified type is a single conversion, and not the sequence of a pointer conversion followed by a qualification conversion (4.4)."
Here is my understanding
int main(){
char buf[] = "Hello";
char const *p1 = buf; // 2 step conversion process
// C1: char [6] to char *
// C2: char * to char const * (qualification conversion)
char const *p2 = 0; // $4.10 applies here
}
Is my understanding (as in the code comments) correct?
My question is
What is so significant about the quoted portion of $4.10 that it deserves a mention? Not that it hurts to be there, but then I don't understand it I think.
What is the impliciation of this quote (overload resolution?)? Any examples?