Си++: различия между версиями

Содержимое удалено Содержимое добавлено
Строка 80:
* внутри функции <tt>foo</tt> мы обращаемся с <tt>x</tt>, как с обычной переменной, и только компилятор знает, что внутри это — указатель.
 
Некоторые программисты считают, что так делать не безопастнобезопасно, ввиду того, что, вызывая функцию в формате foo(z), программист подразумевает, что данные копируются в локальный стек функции и не изменяются. Действия по взятию адреса и изменению значения могут быть совершенно неожиданными для программиста использующего вашу функцию.
 
С другой точки зрения, прототип функции явно указывает, что функция может изменить переменную, также как и документация(при условии её правильного составления).