Why both of the next examples are the same?
Ex1 : int*(*foo)() = Function;
Ex2: int*(*foo)() = &Function;
Notice: In the second example i'm using & operator.
That means that c++ takes function name as an address of it and this () dereferencing it just like in arrays?