69709

Параметри по замовчуванню

Лекция

Информатика, кибернетика и программирование

Значення за замовчанням задається за допомогою синтаксичної конструкції яка дуже схожа на ініціалізацію змінної. Наприклад наступний оператор оголошує що функція myfunc отримує один аргумент типу double що за замовчанням приймає значення...

Украинкский

2014-10-09

24.5 KB

0 чел.

Тема 9: Параметри по замовчуванню

У мові C++ аргументам функції можна привласнювати значення, задані по замовчанню, якщо відповідний аргумент при виклику функції був пропущений. Значення за замовчанням задається за допомогою синтаксичної конструкції, яка дуже схожа на ініціалізацію змінної. Наприклад, наступний оператор оголошує, що функція myfunc () отримує один аргумент типу double, що за замовчанням приймає значення 0.0.

void myfunc (double d =  0.0)

Тепер функцію myfunc() можна викликати двома способами.

myfunc (198 .234) ;   //  Передача  явного  значення

myfunc O; //   Функція  використовує   значення  за замовчанням

При першому виклику параметр d отримує значення 198.234. Під час другого виклику параметр d автоматично приймає значення 0.0.

Параметри за замовчанням дозволяють справлятися із зростаючою складністю програм.  У багатьох випадках функції містять більше параметрів,  чим потрібно у конкретній ситуації. Таким чином, у кожному конкретному випадку достатньо вказати лише необхідні параметри, а не все відразу. Наприклад, багато функцій введення-вивдення використовують саме цей механізм.

Створюючи функції з аргументами за замовчанням, важливо пам'ятати, що їх значення можна задати лише один раз під час оголошення функції. У попередньому приклад значення за замовчанням було вказане в прототипі функції iputs (). Якщо спробувати задати нове (або навіть те ж саме значення) у визначенні функції iputs() компілятор видасть повідомлення про помилку. Хоча значення аргументів по замовчуванню перевизначити неможливо, можна задавати різні значення для кожної версії перевантаженої функції.

Всі параметри, що приймають значення за замовчанням, повинні розташовуватися правіше ніж звичайні аргументи. Наприклад, наступне визначення функції iputs()  є неправильним:

void iputs(float a=1.23, int b, int z=0);

Почавши визначати параметри, що приймають значення за замовчанням, не можна перемішувати їх звичайними параметрами. Інакше кажучи, наступне оголошення є невірним.

int myfunc(float  f,   char  *str,   int  i=10,   int j);

Оскільки значення параметра i задається за замовчанням, параметр j також повинен мати значення за замовчанням.

Параметри конструктора теж можуть мати значення за замовчанням.


 

А также другие работы, которые могут Вас заинтересовать

14196. Управление конфликтами и стрессами на предприятии 437.5 KB
  Дипломный проект На тему Управление конфликтами и стрессами на предприятии Содержание: Введение. Глава 1. Теоретические подходы к исследованию конфликтов и стрессов на предприятии. Сущность и содержание конфликтов и стрессов на предприятии. Причины их возни
14197. Управление конфликтами на предприятии 401 KB
  Каждому из нас приходилось сталкиваться с конфликтными ситуациями. Конфликты проявляются в деятельности всех социальных институтов социальных групп во взаимоотношениях между людьми и играют ключевую роль в жизни отдельного человека семьи...
14198. УПРАВЛЕНИЕ БАНКОВСКИМИ РИСКАМИ на ЗАО «Ростовская валютно-фондовая биржа» 173.66 KB
  Содержание Введение Глава 1. Классификация банковских рисков методы их оценки и управления 1.1.Классификация рисков возникающих при проведении операций на биржевом рынке 1.2.Банковские риски при проведении операций с иностранной валютой 1.3.Банковск
14199. Использование подходов веб-аналитики для построения модели пользователя 304.5 KB
  Рассматриваются системы электронной отчетности как специфический вид веб-ресурса. Ставится цель повышения эффективности ресурса. Разрабатывается методика построения модели веб-пользователя с применением подходов веб-аналитики. Строится модель и её графическое представление.
14200. Характеристика получения взятки и взяточничества в целом 342 KB
  ВВЕДЕНИЕ В настоящее время в России в период построения цивилизованной экономики и становления демократического правового государства важная роль принадлежит органам государственной власти и исполнения а также органам местного самоупр
14201. Эмиссионные операции ОАО КБ «Сбербанка России» 212 KB
  Эмиссия краткосрочных долговых инструментов — депозитных и сберегательных сертификатов, векселей, инвестиционные свойства которых позволяют совместить высокую ликвидность, невысокий риск и...
14202. Эффективность методики оценки кредитоспособности клиента ЗАО КБ «Пятигорск» и ОАО «Ставропольпромстройбанка» 2.3 MB
  ВВЕДЕНИЕ Кредитнофинансовая система –одна из важнейших и неотъемлемых структур рыночной экономики. Развитие банковской системы и товарного производства исторически шло параллельно и тесно переплеталось. Находясь в центре экономической жизни банки опосредуют с...
14203. КОНСПЕКТЫ ЛЕКЦИЙ ПО БЕЛОРУССКОЙ МУЗЫКЕ 69.22 KB
  КОНСПЕКТЫ ЛЕКЦИЙ ПО БЕЛОРУССКОЙ МУЗЫКЕ БЕЛОРУССКАЯ МУЗЫКА XVIII ВЕКА В XVIII веке Беларусь входила в состав Речи Посполитой. В конце века Речь Посполитая была разделена тремя государствами и перестала существовать как самостоятельная политическая единица. Белору...
14204. Белорусская народная музыка 219.5 KB
  Белорусская народная музыка Музыкальный фольклор – уникальная самобытная культура наших предков – осознается современным обществом как значительный фактор духовности преемственности поколений приобщения к национальным жизненным истокам. Зарод