// Нұсқауыштар жиымын сипаттау жəне инициалдау;
PF menu[] = {&new, &open, &save};
menu[l](10); // open функциясын шақыру
Бұл жерде
new,
open
жəне
save
– алдын ала жариялануы тиіс
функциялардың атаулары.
Функцияларға нұсқауыштар ішкі программаға басқа типтегі параметрлер
сияқты беріледі:
#include
typedef void (*PF)(int);
void fl (PF pf){ // fl функциясы параметр ретінде
// PF типіндегі нұсқауышты алады
pf(5);
// нұсқауыш арқылы берілген
// функцияны шақыру
}
void f(int i){ cout << i; }
int main(){
f1(f);
return 0;
}
Нұсқауыштың типі мен осы нұсқауыш арқылы шақырылатын функцияның
типі бір-бірімен дəлме-дəл сəйкес келуі керек.
Келісім бойынша берілген мəндері бар параметрлер
Функцияны шақыруды жеңілдету үшін оның тақырыбында параметрлердің
келісім бойынша берілген мəндерін көрсетуге болады. Олар параметрлер
тізімнің соңында болуы тиіс жəне функцияны шақыру кезінде олардың жа-
зылуы міндетті емес. Егер шақыру кезінде параметр көрсетілмесе, одан кейін
орналасқан барлық параметрлер де жазылмайды. Параметрлердің келісім
бойынша берілген мəндері ретінде тұрақтылар, ауқымды айнымалылар жəне
өрнектер қолданылуы мүмкін:
|