Предположим, я определил функцию в C ++ следующим образом:
void foo(int &x) const {
x = x+10;
}
И предположим, я называю это следующим образом:
int x = 5;
foo(x);
Теперь обычно (без ключевого слова const
) это успешно изменит значение x
с точки зрения вызывающей стороны, поскольку переменная передается по ссылке. Ключевое слово const
меняет это? (т.е. с точки зрения вызывающего абонента, является ли значение x
теперь 15?)
Полагаю, я не совсем понимаю, что делает ключевое слово const
, когда оно добавляется в конец определения функции ... любая помощь приветствуется.