Студопедия — R.5.2.2 Вызов функции
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

R.5.2.2 Вызов функции






Вызов функции является постфиксным выражением, за которым следует,возможно пустой, список выражений в скобках, разделенных запятой.Эти выражения образуют фактические параметры функции. Постфиксноевыражение должно иметь тип "функция, возвращающая 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). Порядок вычислений параметров неопределен и учтите, что онможет быть различен у разных трансляторов. Все побочные эффектывыражений фактических параметров могут происходить перед началомвыполнения функции. Порядок вычисления постфиксных выражений исписка выражений параметров неопределен. Допустимы рекурсивные вызовы. Операция вызова функции порождает адрес только, если типрезультата есть адрес.







Дата добавления: 2015-09-04; просмотров: 312. Нарушение авторских прав; Мы поможем в написании вашей работы!



Расчетные и графические задания Равновесный объем - это объем, определяемый равенством спроса и предложения...

Кардиналистский и ординалистский подходы Кардиналистский (количественный подход) к анализу полезности основан на представлении о возможности измерения различных благ в условных единицах полезности...

Обзор компонентов Multisim Компоненты – это основа любой схемы, это все элементы, из которых она состоит. Multisim оперирует с двумя категориями...

Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...

ТРАНСПОРТНАЯ ИММОБИЛИЗАЦИЯ   Под транспортной иммобилизацией понимают мероприятия, направленные на обеспечение покоя в поврежденном участке тела и близлежащих к нему суставах на период перевозки пострадавшего в лечебное учреждение...

Кишечный шов (Ламбера, Альберта, Шмидена, Матешука) Кишечный шов– это способ соединения кишечной стенки. В основе кишечного шва лежит принцип футлярного строения кишечной стенки...

Принципы резекции желудка по типу Бильрот 1, Бильрот 2; операция Гофмейстера-Финстерера. Гастрэктомия Резекция желудка – удаление части желудка: а) дистальная – удаляют 2/3 желудка б) проксимальная – удаляют 95% желудка. Показания...

СПИД: морально-этические проблемы Среди тысяч заболеваний совершенно особое, даже исключительное, место занимает ВИЧ-инфекция...

Понятие массовых мероприятий, их виды Под массовыми мероприятиями следует понимать совокупность действий или явлений социальной жизни с участием большого количества граждан...

Тактика действий нарядов полиции по предупреждению и пресечению правонарушений при проведении массовых мероприятий К особенностям проведения массовых мероприятий и факторам, влияющим на охрану общественного порядка и обеспечение общественной безопасности, можно отнести значительное количество субъектов, принимающих участие в их подготовке и проведении...

Studopedia.info - Студопедия - 2014-2024 год . (0.008 сек.) русская версия | украинская версия