Имеет ли использование const для параметров функции какой-либо эффект? Почему это не влияет на сигнатуру функции?C++

Программы на C++. Форум разработчиков
Anonymous
Имеет ли использование const для параметров функции какой-либо эффект? Почему это не влияет на сигнатуру функции?

Сообщение Anonymous »

Например, представьте себе простой мутатор, принимающий один логический параметр:

Код: Выделить всё

void SetValue(const bool b) { my_val_ = b; }
Оказывает ли это const какое-либо влияние? Лично я предпочитаю использовать его широко, включая параметры, но в данном случае мне интересно, имеет ли это какое-либо значение.
Я также был удивлен, узнав, что вы можете опустить const из параметров в объявлении функции, но можете включить его в определение функции, например:
.h файл

Код: Выделить всё

void func(int n, long l);
.cpp файл

Код: Выделить всё

void func(const int n, const long l) { /* ... */ }
Есть ли для этого причина? Мне это кажется немного необычным.

Подробнее здесь: https://stackoverflow.com/questions/117 ... not-affect

Вернуться в «C++»