В чем разница в передаваемом параметре функции для C++?
В чем разница между записями:
int32_t Function1(const int32_t c);
int32_t Function2(const int32_t &c);
int32_t &Function3(const int32_t &c);
Ответы (1 шт):
Автор решения: dIm0n
→ Ссылка
В первом случае передаёте константу по значению:
int32_t Function1(const int32_t c);
Во втором - ссылку на константу:
int32_t Function2(const int32_t &c);
В третьем - ссылку на константу + возвращается ссылка на неконстанту:
int32_t &Function3(const int32_t &c);
То есть между 2 и 3 нет разницы в передаваемом параметре, а между 1 и 2/3 - есть.