int arr[10]{};
int* ptr = arr; // legal
int* (&ref) = arr; // illegal
While pointer and reference are just same when it comes to assembly,
it is a bit hard for me to understand that int* ptr
can points to array while int* (&ref)
has to define it as const
or explicitly show size such int (&ref)[10] = arr
What is the difference?