U C++ funkcija je blok koda koji se uvodi za izvođenje neke funkcije, a pokazivači se koriste za pokazivanje na varijable u funkciji. Pokazivači se dodjeljuju uz adresu.
Kako vratiti pokazivač iz funkcija u C++
U C++ je moguće vratiti pokazivač iz funkcije. To se može postići deklariranjem funkcije povratnog tipa kao pokazivača na tu funkciju. Svaka funkcija koja se kreira uzima određenu adresu u memoriji. Zvjezdica * umetnuta je lijevo od naziva funkcije.
Sintaksa
Ovo je sintaksa za vraćanje pokazivača iz funkcije u C++:
povratak tip ( * ime_pokazivača_funkcije ) ( tip_argumenta_1, tip_argumenta_2, ……, tip_argumenta_n ) = naziv_funkcije ;
Primjer 1
Ovaj primjer ilustrira vraćanje pokazivača iz funkcije u C++:
#include
korištenjem imenski prostor std ;
poništiti proizlaziti ( int i a )
{
a + = 10 ;
}
int glavni ( )
{
int x = 40 ;
//pokazivač se vraća iz funkcije
poništiti ( * ptr ) ( int i ) = i proizlaziti ;
ptr ( x ) ;
cout << x << endl ;
povratak 0 ;
}
U ovom izvornom kodu deklarirana je funkcija void result i uzima referencu na int a koja se povećava 10 puta. Varijabla x pohranjuje vrijednost 40, a *ptr pokazuje na funkciju int&. Dok ptr pokazuje na rezultat, tako da se x povećava za 10.
Vrijednost ulaza x se povećava za 10 i vraća se za 50.
Primjer 2
Ovo je primjer koji izračunava tjednu plaću radnika:
#includekorištenjem imenski prostor std ;
dvostruko i GetWeeklyHours ( )
{
dvostruko h = 32.65 ;
dvostruko i sati = h ;
povratak sati ;
}
dvostruko * GetSalary ( )
{
dvostruko plaća = 42.48 ;
dvostruko * Plaća po satu = i plaća ;
povratak Plaća po satu ;
}
int glavni ( )
{
dvostruko sati = GetWeeklyHours ( ) ;
dvostruko plaća = * GetSalary ( ) ;
cout << 'Tjedno radno vrijeme radnika: ' << sati << endl ;
cout << 'Plaća po satu radnika: ' << plaća << endl ;
dvostruko Tjedna plaća = sati * plaća ;
cout << 'Tjedna plaća radnika: ' << Tjedna plaća << endl ;
povratak 0 ;
}
U ovom izvornom kodu unose se sati i plaća po satu. Pokazivač povrata iz metode funkcije koristi se za pristup ovim parametrima i izračunavanje tjedne plaće radnika.
Poznavajući tjedne sate i plaću po satu, tjedna se plaća može izračunati množenjem oba izraza.
Zaključak
U C++ je moguće vratiti pokazivač iz funkcije. To se može postići deklariranjem funkcije povratnog tipa kao pokazivača na tu funkciju. Svaka funkcija koja se kreira uzima određenu adresu u memoriji.