Студопедия
Новини освіти і науки:
МАРК РЕГНЕРУС ДОСЛІДЖЕННЯ: Наскільки відрізняються діти, які виросли в одностатевих союзах


РЕЗОЛЮЦІЯ: Громадського обговорення навчальної програми статевого виховання


ЧОМУ ФОНД ОЛЕНИ ПІНЧУК І МОЗ УКРАЇНИ ПРОПАГУЮТЬ "СЕКСУАЛЬНІ УРОКИ"


ЕКЗИСТЕНЦІЙНО-ПСИХОЛОГІЧНІ ОСНОВИ ПОРУШЕННЯ СТАТЕВОЇ ІДЕНТИЧНОСТІ ПІДЛІТКІВ


Батьківський, громадянський рух в Україні закликає МОН зупинити тотальну сексуалізацію дітей і підлітків


Відкрите звернення Міністру освіти й науки України - Гриневич Лілії Михайлівні


Представництво українського жіноцтва в ООН: низький рівень культури спілкування в соціальних мережах


Гендерна антидискримінаційна експертиза може зробити нас моральними рабами


ЛІВИЙ МАРКСИЗМ У НОВИХ ПІДРУЧНИКАХ ДЛЯ ШКОЛЯРІВ


ВІДКРИТА ЗАЯВА на підтримку позиції Ганни Турчинової та права кожної людини на свободу думки, світогляду та вираження поглядів



Контакти
 


Тлумачний словник
Авто
Автоматизація
Архітектура
Астрономія
Аудит
Біологія
Будівництво
Бухгалтерія
Винахідництво
Виробництво
Військова справа
Генетика
Географія
Геологія
Господарство
Держава
Дім
Екологія
Економетрика
Економіка
Електроніка
Журналістика та ЗМІ
Зв'язок
Іноземні мови
Інформатика
Історія
Комп'ютери
Креслення
Кулінарія
Культура
Лексикологія
Література
Логіка
Маркетинг
Математика
Машинобудування
Медицина
Менеджмент
Метали і Зварювання
Механіка
Мистецтво
Музика
Населення
Освіта
Охорона безпеки життя
Охорона Праці
Педагогіка
Політика
Право
Програмування
Промисловість
Психологія
Радіо
Регилия
Соціологія
Спорт
Стандартизація
Технології
Торгівля
Туризм
Фізика
Фізіологія
Філософія
Фінанси
Хімія
Юриспунденкция






Вказівники на функції

Подібно як ім’я масиву є постійним вказівником на перший елемент масиву, так ім’я функції є постійним вказівником на саму функцію. Можна оголосити змінну , яка містить адресу функції, і викликати функцію за цим вказівником. Це дозволить звертатись до будь-якої функції за власним розглядом. Єдиною складністю у застосуванні вказівника на функцію є необхідність розпізнати тип об’єкту, на який вказує вказівник. Вказівник на тип цілого вказує на цілочисельне змінну, а вказівник на функцію повинен вказувати на тип значення, що повертає функція та відповідного сигнатурі. Наприклад,

long (*funcPtr) (int);

Тут funcPtr оголошений як вказівник на функцію, яка приймає цілочисельний параметр та повертає значення типу long. Дужки обов’язкові. Параметрів буде стільки, скільки подано при оголошені функції. Ім’я функції не вказано, бо це може бути будь-яка функція, яка приймає цілочисельний параметр та повертає значення типу long.

Розглянемо наступний запис.

long * function (int);

Тут function це функція, яка приймає цілочисельний параметр та повертає вказівник на змінну типу long.

Виклик функції через вказівник відбувається так само, як і виклик самої функції, але замість імені функції використовується ім’я вказівника. Щоб присвоїти вказівнику на функцію адресу функції, достатньо присвоїти йому імя цієї функції без круглих дужок.

 

void Cube ( int, int); // оголошення функції

void (*pFunc) ( int,int); // оголошення вказівника

...

pFunc = Cube; // присвоєння вказівнику адреси функції Cube

...

pFunc(valOne, valTwo); // виклик функції Cube через вказівник

 

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

 




Переглядів: 1776

Не знайшли потрібну інформацію? Скористайтесь пошуком google:

 

© studopedia.com.ua При використанні або копіюванні матеріалів пряме посилання на сайт обов'язкове.


Генерація сторінки за: 0.004 сек.