![]() Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Опис підпрограм
Тема 18 Процедур і функції — методи класу
Історично першим способом структуризації програм в мовах програмування високого рівня було використання процедур і функцій — щодо самостійних фрагментів програм, оформлених особливим чином і забезпечених ім'ям. Згадка цього імені в програмі називається викликом процедури (функції). Відмінність функції від процедури полягає в тому, що результатом виконання операторів, утворюючих тіло функції, завжди є значення деякого типу, тому функція може брати участь в утворенні виразів разом із змінними і константами. Умовимося надалі називати процедури і функції загальним словом підпрограми, якщо тільки це дозволяє висловлюваний матеріал. Структуризація програм необхідна по двох причинах. По-перше, неможливо написати більш менш складну програму як єдине ціле, не розчленовувавши її на окремих відносно самостійні частини — підпрограми. По-друге, підпрограми відкривають можливість повторного використання одного разу створеного коду і сприяють появі бібліотек підпрограм. У мові С# підпрограми не мають самостійного значення — вони можуть бути тільки методами класу. Опис підпрограм У С# немає спеціальних зарезервованих слів procedure і function для опису підпрограм. Оскільки вони є методами класу, ці слова надмірні. Синтаксис опису такий: [модифікатори] < Тип> < Ім'я> ([Формальниє_параметри> ]) {< Тіло> } У квадратних дужках вказані необов'язкові елементи. Модифікатори визначають область видимості підпрограми і детально розглядаються в розділі І.. Зараз поясню лише два модифікатори — private і public. Будь-які члени класу (зокрема методи-підпрограми), оголошені з модифікатором private, доступні тільки в методах даного класу. Модифікатор public робить метод (підпрограму) доступним в будь-якому місці програми. Якщо модифікатор не вказаний, вважається, що даний член класу помічений як закритий (з модифікатором private). Формальні параметри можуть бути відсутніми, але і в цьому випадку круглі дужки за ім'ям підпрограми обов'язкові. Тип підпрограми може бути будь-яким типом даних. В цьому випадку підпрограма є функцією, яка повертає результат вказаного типу. У тілі функції обов'язково указується оператор return, який привласнює функції потрібне значення. Як тип можна вказати зарезервоване слово void, яке означає відсутність типу. В цьому випадку підпрограма є процедурою і в ній не можна указувати оператора return. Ім'я підпрограми повинне бути унікальним в поточній області видимості ідентифікатора. Тіло підпрограми обов'язково реалізується у вигляді блоку операторів, тому за закриваючою круглою дужкою повинна слідувати відкриваюча фігурна, навіть якщо тіло підпрограми відсутній або містить єдиний оператор. Приклади описів: int A() {...} void В(...) {...} public string С() {... }
Тут А і В — закриті члени класу, які доступні тільки в методах цього ж класу, причому А — цілочисельна функція, а В — процедура. С — відкрита функція рядкового типу, доступна в будь-якій точці програми.
|