Я пытаюсь понять, есть ли какая-либо польза для возврата ссылки const. У меня есть факториальная функция, которая обычно выглядит так:
unsigned long factorial(unsigned long n)
{
return (n == 0) ? 1 : n * factorial(n - 1);
}
Я предполагаю, что будет увеличение производительности, когда мы пройдем по ссылке const, и вернем ссылку const... но const -корректность всегда меня смущает.
const unsigned long & factorial(const unsigned long& n)
{
return (n == 0) ? 1 : n * factorial(n - 1);
}
Можно ли вернуть ссылку const? Кроме того, может кто-нибудь, пожалуйста, скажите мне: полезно ли?