V C++ je funkce blok kódu, který je zaveden k provedení nějaké funkce a ukazatele se používají k ukazování proměnných ve funkci. Ukazatele jsou přiřazeny k adrese.
Jak vrátit ukazatel z funkcí v C++
V C++ je možné vrátit ukazatel z funkce. Toho lze dosáhnout deklarováním funkce návratového typu jako ukazatele na tuto funkci. Každá vytvořená funkce má v paměti určenou adresu. Hvězdička * se vkládá nalevo od názvu funkce.
Syntax
Toto je syntaxe pro vrácení ukazatele z funkce v C++:
vrátit se typ ( * název_ukazatele_funkce ) ( argument_type_1, argument_type_2, ……, argument_type_n ) = název_funkce ;
Příklad 1
Tento příklad ilustruje návrat ukazatele z funkce v C++:
#include
použitím jmenný prostor std ;
prázdnota výsledek ( int & A )
{
A + = 10 ;
}
int hlavní ( )
{
int X = 40 ;
//ukazatel vrací z funkce
prázdnota ( * ptr ) ( int & ) = & výsledek ;
ptr ( X ) ;
cout << X << endl ;
vrátit se 0 ;
}
V tomto zdrojovém kódu je deklarována funkce void result a přebírá odkaz na int a, který je 10krát inkrementován. Proměnná x ukládá hodnotu 40 a *ptr ukazuje na funkci int&. Protože ptr ukazuje na výsledek, tak se x zvýší o 10.
Hodnota vstupu x se zvýší o 10 a vrátí se o 50.
Příklad 2
Toto je příklad, který vypočítává týdenní plat pracovníků:
#includepoužitím jmenný prostor std ;
dvojnásobek & GetWeeklyHours ( )
{
dvojnásobek h = 32,65 ;
dvojnásobek & hodin = h ;
vrátit se hodin ;
}
dvojnásobek * Získejte plat ( )
{
dvojnásobek plat = 42,48 ;
dvojnásobek * Hodinová mzda = & plat ;
vrátit se Hodinová mzda ;
}
int hlavní ( )
{
dvojnásobek hodin = GetWeeklyHours ( ) ;
dvojnásobek plat = * Získejte plat ( ) ;
cout << 'Týdenní pracovní doba pracovníků: ' << hodin << endl ;
cout << „Hodinový plat dělníků: “ << plat << endl ;
dvojnásobek Týdenní plat = hodin * plat ;
cout << 'Týdenní plat dělníků:' << Týdenní plat << endl ;
vrátit se 0 ;
}
V tomto zdrojovém kódu jsou zadány hodiny a hodinová mzda. Návratový ukazatel z metody funkce se používá k přístupu k těmto parametrům a výpočtu týdenního platu pracovníků.
Znáte-li týdenní hodiny a hodinový plat, lze týdenní plat vypočítat vynásobením obou podmínek.
Závěr
V C++ je možné vrátit ukazatel z funkce. Toho lze dosáhnout deklarováním funkce návratového typu jako ukazatele na tuto funkci. Každá vytvořená funkce má v paměti určenou adresu.