Вызов функции является постфиксным выражением, за которым следует,возможно пустой, список выражений в скобках, разделенных запятой.Эти выражения образуют фактические параметры функции. Постфиксноевыражение должно иметь тип "функция, возвращающая T", "указатель нафункцию, возвращающую T" или "ссылка на функцию, возвращающую T",а результат операции вызова имеет тип "T". При вызове функции происходит инициализация каждого формальногопараметра ($$R.8.4.3, $$R.12.8, $$r.12.1) фактическим параметром.Производятся стандартные ($$R.4) и заданные пользователем ($$R.12.3)преобразования типа. В функции может изменяться значения непостоянныхформальных параметров, но эти изменения не могут повлиять на значенияфактических параметров, кроме того случая, когда формальный параметримеет тип ссылки без спецификации const ($$R.8.2.2). Если формальныйпараметр имеет тип ссылки при необходимости может создаватьсявременная переменная ($$R.7.1.6, $$R.2.5,$$R.2.5.4,$$R.8.2.4,$$R.12.2). Добавим, что возможно изменение непостоянных объектов спомощью параметров-указателей. Функцию можно описать таким образом, что она сможет использоватьменьшее число параметров (определив параметры по умолчанию $$R.8.2.6)или большее число параметров (с помощью эллипсиса... $$R.8.2.5),чем было указано при определении функции ($$R.8.3). Функцию можно вызвать только, если описание ее доступно в той областивидимости, где происходит вызов. Отсюда следует, всякий формальныйпараметр, соответствующий некоторому фактическому параметру, долженбыть доступен, если не считать эллипсис (...). Перед вызовом всякий фактический параметр типа float, для которогонет формального параметра, преобразуется к типу double, а типаchar, short, перечисления или битовое поле, для которого нетформального параметра, преобразуется к типу int или unsignedсогласно стандартным преобразованиям целочисленных ($$R.4.1).Объект, являющийся классом и не имеющий описания формального параметра,передается при вызове как структура данных. Объект, являющийся классом и имеющий описание формальногопараметра передается с помощью инициализации формального параметрафактическим параметром, которая происходит перед выполнениемфункции посредством вызова конструктора ($$R.12.2, $$R.12.8). Порядок вычислений параметров неопределен и учтите, что онможет быть различен у разных трансляторов. Все побочные эффектывыражений фактических параметров могут происходить перед началомвыполнения функции. Порядок вычисления постфиксных выражений исписка выражений параметров неопределен. Допустимы рекурсивные вызовы. Операция вызова функции порождает адрес только, если типрезультата есть адрес.