Тема: f(const x)
Показать сообщение отдельно
Старый 27.06.2012, 10:44   #7
impersonalis
Зануда с интернетом
 
Аватар для impersonalis
 
Регистрация: 04.09.2005
Сообщений: 14,014
Написано 6,798 полезных сообщений
(для 20,935 пользователей)
Ответ: f(const x)

Сообщение от HolyDel Посмотреть сообщение
видимо я криво объяснил свою точку зрения. на счет копипаста она довольно проста на самом деле:

1) если у некоторых функций аргумент будет константным а у некоторых нет - то мы выносим детали реализации в интерфейс, а это говно.
2) поэтому, надо или у всех функций делать аргумент константным или у всех не делать
3) если у исходной функциии аргумент константный, то внутри находится код, который эту константность как-то обходит, и этот код будет копипаститься в новую функцию (также с константным аргументом) и успешно будет компилироваться.
4) если же у исходной функции аргумент НЕ константный, а у новой константный - то см пункт 1.
Более чем доходчиво! Стало понятно после первого прочтения.
Остался лишь риторический осадок: может стоит запрещать изменять аргументы функций, передаваемые по значению правилами языка?
__________________
http://nabatchikov.com
Мир нужно делать лучше и чище. Иначе, зачем мы живем? tormoz
А я растила сына на преданьях
о принцах, троллях, потайных свиданьях,
погонях, похищениях невест.
Да кто же знал, что сказка душу съест?
(Offline)
 
Ответить с цитированием