przekazywanie stałego wskaźnika przez odniesienie
Jestem zdezorientowany, dlaczego następujący kod nie jest w stanie się skompilować
int foo(const float* &a) {
return 0;
}
int main() {
float* a;
foo(a);
return 0;
}
Kompilator podaje błąd jako:
błąd: niepoprawna inicjalizacja odwołania typu „const float * &” z wyrażenia typu „float *”
ale gdy próbuję przekazać bez referencji w foo, kompiluje się dobrze.
Myślę, że to powinno pokazać to samo zachowanie, czy przejdę przez odniesienie, czy nie.
Dzięki,