Урок №102. Параметри і аргументи функцій

  Юрій  | 

  Оновл. 18 Січ 2021  | 

 94

У першому розділі туторіалу по С++ ми розглядали функції на наступних уроках:

   Урок №15. Функції і оператор return

   Урок №16. Параметри і аргументи функцій

   Урок №22. Прототип функції і Попереднє оголошення

   Урок №23. Багатофайлові програми

   Урок №24. Заголовкові файли

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

Параметри vs. Аргументи

На наступних уроках ми детально поговоримо про параметри і аргументи, тому давайте коротко згадаємо їх визначення.

Параметр функції (або “формальний параметр”) — це змінна, яка створюється в оголошенні функції:

Аргумент (або “фактичний параметр”) — це значення, яке в функцію передає об’єкт, який викликає (caller) функцію:

Коли функція викликається, всі параметри функції створюються як змінні, а значення аргументів копіюються в параметри. Наприклад:

При виклику функції boo() з аргументами 4 і 5, створюються параметри x і y функції boo() і їм присвоюються відповідні значення: 4 і 5. Результатом буде x = 4 і y = 5.

Примітка: У прикладі, наведеному вище, порядок обробки параметрів в функції boo() буде справа наліво, тобто спочатку створиться змінна y і їй присвоїться значення 5, а потім вже створиться змінна x і їй присвоїться значення 4. Порядок, в якому ініціалізуються параметри в круглих дужках функції, визначає кожен компілятор окремо, так як С++ явно не вказує цей порядок обробки. З параметрами-змінними це не настільки важливо і критично, але якщо ви будете використовувати в якості параметрів виклики інших функцій (що є поганою практикою і не рекомендується до використання), то результат може бути несподіваним.

Розглянемо наступну програму:

Результат виконання програми:

y = 5
x = 4

Хоча параметри не оголошені всередині блоку функції, вони мають локальну область видимості. Це означає, що вони створюються при виконанні функції та знищуються, коли блок функції завершується:

Існує 3 основних способи передачі аргументів у функцію:

   передача по значенню;

   передача по посиланню;

   передача по адресу.

Ми розглянемо кожний з цих способів по порядку.

Оцінити статтю:

1 Зірка2 Зірки3 Зірки4 Зірки5 Зірок (2 оцінок, середня: 5,00 з 5)
Loading...

Залишити відповідь

Ваш E-mail не буде опублікований. Обов'язкові поля відмічені *