На этот вопрос уже есть ответ здесь:
Я читал свою книгу C ++ (Deitel), когда наткнулся на функцию для вычисления объема куба. Код следующий:
double cube (const double side){
return side * side * side;
}
Использование квалификатора «const» объясняется следующим образом: «Квалифицированная константа должна использоваться для обеспечения соблюдения принципа наименьших привилегий, сообщая компилятору, что функция не изменяет сторону переменной».
Мой вопрос : не является ли использование "const" здесь избыточным / ненужным, поскольку переменная передается по значению, поэтому функция все равно не может ее изменить?