Kuidas naasta kursorit C++ funktsioonidest

Kuidas Naasta Kursorit C Funktsioonidest



C++ puhul on funktsioon koodiplokk, mis võetakse kasutusele mõne funktsiooni täitmiseks ja osutit kasutatakse funktsiooni muutujatele osutamiseks. Osutajad on määratud aadressiga.

Kuidas naasta kursorit C++ funktsioonidest

C++-s on võimalik funktsioonist kursor tagastada. Seda saab saavutada, deklareerides tagastamistüübi funktsiooni selle funktsiooni osutajana. Iga loodud funktsioon võtab mällu määratud aadressi. Tärn * lisatakse funktsiooni nimest vasakule.







Süntaks

See on süntaks C++-i funktsioonist osuti tagastamiseks:



tagasi tüüp ( * funktsiooni_osuti_nimi ) ( argumendi_tüüp_1, argumendi_tüüp_2, ……, argumendi_tüüp_n ) = funktsiooni_nimi ;

Näide 1

See näide illustreerib kursori tagastamist C++-i funktsioonist:



#include

kasutades nimeruum std ;

tühine tulemus ( int & a )

{

a + = 10 ;

}

int peamine ( )

{

int x = 40 ;

// osuti naaseb funktsioonist

tühine ( * ptr ) ( int & ) = & tulemus ;

ptr ( x ) ;

cout << x << endl ;

tagasi 0 ;

}

Selles lähtekoodis deklareeritakse tühitulemuse funktsioon ja see võtab viite int a-le, mida suurendatakse 10 korda. Muutuja x salvestab väärtuse 40 ja *ptr osutab funktsioonile int&. Ass ptr osutab tulemusele, nii et x-i suurendatakse 10 võrra.





Sisend x väärtust suurendatakse 10 võrra ja tagastatakse 50 võrra.



Näide 2

See on näide, mis arvutab töötajate nädalapalga:

#include

kasutades nimeruum std ;

kahekordne & Get WeeklyHours ( )

{

kahekordne h = 32.65 ;

kahekordne & tundi = h ;

tagasi tundi ;

}

kahekordne * GetSalary ( )

{

kahekordne palk = 42.48 ;

kahekordne * Tunnipalk = & palk ;

tagasi Tunnipalk ;

}

int peamine ( )

{

kahekordne tundi = Get WeeklyHours ( ) ;

kahekordne palk = * GetSalary ( ) ;

cout << 'Tööliste nädalatunnid: ' << tundi << endl ;

cout << 'Tööliste tunnipalk:' << palk << endl ;

kahekordne Nädalapalk = tundi * palk ;

cout << 'Tööliste nädalapalk:' << Nädalapalk << endl ;

tagasi 0 ;

}

Selles lähtekoodis on sisestatud tunnid ja tunnipalk. Funktsiooni meetodi tagastuskursorit kasutatakse nendele parameetritele juurdepääsuks ja töötajate nädalapalga arvutamiseks.

Teades nädalatunde ja tunnipalka, saab nädalapalka arvutada mõlema tähtaja korrutamisega.

Järeldus

C++-s on võimalik funktsioonist kursor tagastada. Seda saab saavutada, deklareerides tagastamistüübi funktsiooni selle funktsiooni osutajana. Iga loodud funktsioon võtab mällu määratud aadressi.