12
Функция атының жақшасыз (және параметрлерсіз) қолданылуы функция
адресі ретінде қабылданады.
Функцияға сілтеме функцияның негізгі атының барлық құқықтарына ие,
яғни оның синонимі (псевдонимі) болып табылады.
Функцияға сілтеме
(нұсқауышқа сілтеме) мәнін өзгерту мүмкін емес, сондықтан функцияға
нұсқауыштар сілтемеге қарағанда үлкен ауқымға ие.
Келесі программа
функцияны шақыруды негізгі аты бойынша,
нұсқауышпен және сілтеме
бойынша орындауды суреттейді:
#include
void func(char lit)
{cout<int main (void)
{void (*pf)(char);
// pf - функцияға нұсқауыш
void(&ref)(char)=func; // ref - функцияға сілтеме
func(‘A’);
// атымен шақыру
pf=func;
// нұсқауышқа функция адресі меншіктеледі
(*pf)(‘B’); // нұсқауыш көмегімен адресі бойынша шақыру
ref(‘C’);
// функцияны сілтеме арқылы шақыру
return 0;
}
Функциямен сілтемені қайтару бірнеше функцияларға бірнеше қайтара
әрекеттесуді ұйымдастыруға мүмкіндік береді. Осы әрекеттесу нәтижесінде
бір объектіні бірнеше қайтара әр түрлі ережемен өзгертуге болады.
Бақылау сұрақтары:
1)
Сілтеме дегеніміз не?
2)
Сілтеме параметрлерінің қандай артықшылығы мен кемшіліктері
бар?
3)
Объектіні сілтеме арқылы функцияға бергенде оның көшірмесі
құрыла ма?
4)
Сілтеме параметрлерін қолданған кезде адрес аргументі қалай
жіберіледі?
5)
Тәуелсіз сілтеме деген не?
Достарыңызбен бөлісу: