Ako vrátiť ukazovateľ z funkcií v C++

Ako Vratit Ukazovatel Z Funkcii V C



V C++ je funkcia blok kódu, ktorý je zavedený na vykonanie nejakej funkcie a ukazovatele sa používajú na ukazovanie premenných vo funkcii. Ukazovatele sú priradené k adrese.

Ako vrátiť ukazovateľ z funkcií v C++

V C++ je možné vrátiť ukazovateľ z funkcie. Dá sa to dosiahnuť deklarovaním funkcie návratového typu ako ukazovateľa na túto funkciu. Každá vytvorená funkcia má určenú adresu v pamäti. Hviezdička * sa vkladá naľavo od názvu funkcie.







Syntax

Toto je syntax na vrátenie ukazovateľa z funkcie v C++:



vrátiť typu ( * function_pointer_name ) ( argument_type_1, argument_type_2, ……, argument_type_n ) = názov_funkcie ;

Príklad 1

Tento príklad ilustruje návrat ukazovateľa z funkcie v C++:



#include

použitím menný priestor std ;

neplatné výsledok ( int & a )

{

a + = 10 ;

}

int Hlavná ( )

{

int X = 40 ;

//ukazovateľ vráti funkciu

neplatné ( * ptr ) ( int & ) = & výsledok ;

ptr ( X ) ;

cout << X << endl ;

vrátiť 0 ;

}

V tomto zdrojovom kóde je deklarovaná funkcia neplatného výsledku a má odkaz na int a, ktorý je 10-krát zvýšený. Premenná x ukladá hodnotu 40 a *ptr ukazuje na funkciu int&. Keďže ptr ukazuje na výsledok, x sa zvýši o 10.





Hodnota vstupu x sa zvýši o 10 a vráti sa o 50.



Príklad 2

Toto je príklad, ktorý vypočítava týždenný plat pracovníkov:

#include

použitím menný priestor std ;

dvojitý & GetWeeklyHours ( )

{

dvojitý h = 32,65 ;

dvojitý & hodiny = h ;

vrátiť hodiny ;

}

dvojitý * Získajte plat ( )

{

dvojitý plat = 42,48 ;

dvojitý * Hodinová mzda = & plat ;

vrátiť Hodinová mzda ;

}

int Hlavná ( )

{

dvojitý hodiny = GetWeeklyHours ( ) ;

dvojitý plat = * Získajte plat ( ) ;

cout << „Týždenný pracovný čas pracovníkov:  “ << hodiny << endl ;

cout << „Hodinový plat  robotníkov: “ << plat << endl ;

dvojitý Týždenný plat = hodiny * plat ;

cout << 'Týždenný plat robotníkov:' << Týždenný plat << endl ;

vrátiť 0 ;

}

V tomto zdrojovom kóde sa zadávajú hodiny a hodinová mzda. Návratový ukazovateľ z metódy funkcie sa používa na prístup k týmto parametrom a výpočet týždenného platu pracovníkov.

Poznaním týždenných hodín a hodinového platu je možné vypočítať týždenný plat vynásobením oboch výrazov.

Záver

V C++ je možné vrátiť ukazovateľ z funkcie. Dá sa to dosiahnuť deklarovaním funkcie návratového typu ako ukazovateľa na túto funkciu. Každá vytvorená funkcia má určenú adresu v pamäti.