Your are right the & gives the address of your function to the BindAction. It needs the address to dynamically call your function at runtime. The & works on functions aswell as on any other variable. If you want to read more about function pointers you can check this out for some examples. This is a very simple c++ concept though, there is not much to be read about. The only thing that you will maybe have problems with is the way the type of a function pointer is written (it is bananas).
I have already read that guide by . I get it…when we don’t know when exactly to call a function. Mostly in case of Events(Mouse click) & stuff. That time we just store the address of function so I can be called when the event occurs. Similarly in this case BindAction event i.e. mouse grab