Синтаксис мови С++ дозволяє використовувати покажчик на функцію. Ім'я будь-якої константи ¾ це покажчик – константа, дорівнює адресі початку входу у функцію, тобто адресі її першої машинної команди. Крім констант можна також описувати покажчики - змінні на функцію у вигляді:
type (*name) (список аргументів); ,
де type ¾ тип значення, що повертається функцією, ;
name ¾ ім'я змінної - покажчика на функцію.
Покажчики на функцію використовуються в наступних основних випадках :
¾ при використанні їх як формальні аргументи в інших функціях;
¾ для непрямого виклику інших (резидентних) функцій (програм), початок входу в який записується у відоме місце ОП.
Приклад 5.1Обчислення суми і різниці двох чисел програмно реалізувати з використанням покажчика на функцію для доступу до інших функцій
//P5_1.CPP –використання покажчика на функцію для доступу
// до інших функцій¾difference( )іsum( ).
#include < iostream >
using namespace std;
int difference ( int, int ); //Прототип функції
int sum ( int, int );
Void main ( )
{
int (*fun) (int, int );
int x = 20, y = 5, z ;
fun = difference ; //Присвоювання адреси одного покажчика - іншому
z = fun (x, y);
cout << "z = " << z << еndl;
fun = sum; //Присвоювання нової адреси покажчика
z = fun (x , y );
cout << "z = " << z << endl;
}
int difference (int a , int b) //Опис функції
{ return (a - b);
}
Переглядів: 301
Не знайшли потрібну інформацію? Скористайтесь пошуком google: