After reading a description about swapping pointer addresses on Stackoverflow, I have a question about C++ syntax for references.
If you have a function with the following signature:
void swap(int*& a, int*& b)
What is the meaning of int*& ? Is that the address of a pointer to an integer? And furthermore being that it is a pointer reference, why is it not required for them to be initialized as follows?
void swap(int*& a, int*& b) : a(a), b(b) {}
Here's the reference question/answer posting (the answer is the point of interest): Swapping addresses of pointers in c