![]() Полезное:
Как сделать разговор полезным и приятным
Как сделать объемную звезду своими руками
Как сделать то, что делать не хочется?
Как сделать погремушку
Как сделать так чтобы женщины сами знакомились с вами
Как сделать идею коммерческой
Как сделать хорошую растяжку ног?
Как сделать наш разум здоровым?
Как сделать, чтобы люди обманывали меньше
Вопрос 4. Как сделать так, чтобы вас уважали и ценили?
Как сделать лучше себе и другим людям
Как сделать свидание интересным?
![]() Категории:
АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника
![]() |
Параметры со значениями по умолчанию
Чтобы упростить вызов функции, в ее заголовке можно указать значения параметров по умолчанию. Эти параметры должны быть последними в списке и могут опускаться при вызове функции. Если при вызове параметр опущен, должны быть опущены и все параметры, стоящие за ним. В качестве значений параметров по умолчанию могут использоваться константы, глобальные переменные и выражения: Int fdnt а. Int b = 0): void fldnt. Int = 100. char* = 0); /* обратите внимание на пробел между * и = (без него получилась бы операция сложного присваивания *=) */ void errdnt errValue = errno); // errno - глобальная переменная fdOO); f(a. 1): // варианты вызова функции f fl(a): fl(a. 10); fl(a. 10. "Vasia"): // варианты вызова функции fl fl(a,."Vasia") // неверно!
Функцию можно вызвать через указатель на нее. Для этого объявляется указатель соответствующего типа и ему с помощью операции взятия адреса присваивается адрес функции; void f (i n t а) { / *... * / } // определение функции void (*pf)(int); // указатель на функцию …. pf = &f; // указателю присваивается адрес функции / / (можно написать pf = f;) pf(10); // функция f вызывается через указатель pf // (можно написать (*pf)(10)) Для того чтобы сделать программу легко читаемой, при описании указателей на функции используют переименование типов (typedef). Можно объявлять массивы указателей на функции (это может быть полезно, например, при реализации меню); // Описание типа PF как указателя // на функцию с одним параметром типа int; typedef void (*PF)(int); // Описание и инициализация массива указателей: PF menu[] = {&new. &open. &save}; menu[l](10); // Вызов функции open Здесь new, open и save — имена функций, которые должны быть объявлены ранее. Указатели на функции передаются в подпрограмму таким же образом, как и параметры других типов: #include <1ostream.h> typedef void (*PF)(int); void fKPF pf){ // функция f l получает в качестве параметра указатель типа PF pf(5); // вызов функции, переданной через указатель } void fdnt 1){cout «1:} Int ma1n(){ f l (f); return 0: } Тип указателя и тип функции, которая вызывается посредством этого указателя, должны совпадать в точности.
Date: 2016-07-25; view: 405; Нарушение авторских прав |