W C++ funkcja to blok kodu wprowadzany w celu wykonania jakiejś funkcji, a wskaźniki służą do wskazywania zmiennych w funkcji. Do adresu przypisane są wskaźniki.
Jak zwrócić wskaźnik z funkcji w C++
W C++ możliwe jest zwrócenie wskaźnika z funkcji. Można to osiągnąć poprzez zadeklarowanie funkcji typu zwracanego jako wskaźnik do tej funkcji. Każda utworzona funkcja zajmuje wyznaczony adres w pamięci. Gwiazdka * jest wstawiana po lewej stronie nazwy funkcji.
Składnia
To jest składnia zwracająca wskaźnik z funkcji w C++:
powrót typ ( * nazwa_wskaźnika_funkcji ) ( typ_argumentu_1, typ_argumentu_2, ……, typ_argumentu_n ) = nazwa_funkcji ;
Przykład 1
Ten przykład ilustruje powrót wskaźnika z funkcji w C++:
#include
za pomocą przestrzeń nazw st ;
próżnia wynik ( wew & A )
{
A + = 10 ;
}
wew główny ( )
{
wew X = 40 ;
//wskaźnik powraca z funkcji
próżnia ( * pt ) ( wew & ) = & wynik ;
pt ( X ) ;
cout << X << koniec ;
powrót 0 ;
}
W tym kodzie źródłowym zadeklarowano pustą funkcję wynikową, która przyjmuje odwołanie do int a, które jest zwiększane 10 razy. Zmienna x przechowuje wartość 40, a *ptr wskazuje na funkcję int&. Ponieważ ptr wskazuje wynik, więc x zwiększa się o 10.
Wartość wejściowa x jest zwiększana o 10 i zwracana o 50.
Przykład 2
Oto przykład obliczający tygodniowe wynagrodzenie pracowników:
#includeza pomocą przestrzeń nazw st ;
podwójnie & Pobierz WeeklyHours ( )
{
podwójnie H = 32,65 ;
podwójnie & godziny = H ;
powrót godziny ;
}
podwójnie * Uzyskaj wynagrodzenie ( )
{
podwójnie wynagrodzenie = 42,48 ;
podwójnie * Wynagrodzenie godzinowe = & wynagrodzenie ;
powrót Wynagrodzenie godzinowe ;
}
wew główny ( )
{
podwójnie godziny = Pobierz WeeklyHours ( ) ;
podwójnie wynagrodzenie = * Uzyskaj wynagrodzenie ( ) ;
cout << „Tygodniowy czas pracy pracowników: ” << godziny << koniec ;
cout << „Wynagrodzenie godzinowe pracowników:” << wynagrodzenie << koniec ;
podwójnie Tygodniowe wynagrodzenie = godziny * wynagrodzenie ;
cout << „Tygodniowe wynagrodzenie pracowników:” << Tygodniowe wynagrodzenie << koniec ;
powrót 0 ;
}
W tym kodzie źródłowym wprowadzane są godziny i wynagrodzenie godzinowe. Wskaźnik powrotu z metody funkcji służy do uzyskania dostępu do tych parametrów i obliczenia tygodniowego wynagrodzenia pracowników.
Znając tygodniowe godziny i wynagrodzenie godzinowe, tygodniowe wynagrodzenie można obliczyć, mnożąc oba terminy.
Wniosek
W C++ możliwe jest zwrócenie wskaźnika z funkcji. Można to osiągnąć poprzez zadeklarowanie funkcji typu zwracanego jako wskaźnik do tej funkcji. Każda utworzona funkcja zajmuje wyznaczony adres w pamięci.