Kā atgriezt rādītāju no C++ funkcijām

Ka Atgriezt Raditaju No C Funkcijam



C++ funkcijā ir koda bloks, kas tiek ieviests, lai veiktu kādu funkciju, un norādes tiek izmantotas, lai norādītu funkcijas mainīgos. Rādītāji tiek piešķirti ar adresi.

Kā atgriezt rādītāju no C++ funkcijām

Programmā C++ ir iespējams atgriezt rādītāju no funkcijas. To var panākt, deklarējot atgriešanās veida funkciju kā rādītāju uz šo funkciju. Katrai izveidotajai funkcijai atmiņā ir noteikta adrese. Zvaigznīte * tiek ievietota pa kreisi no funkcijas nosaukuma.







Sintakse

Šī ir sintakse rādītāja atgriešanai no funkcijas C++:



atgriezties veids ( * funkcijas_rādītāja_nosaukums ) ( argumenta_tips_1, argumenta_tips_2, ……, argumenta_tips_n ) = funkcijas_nosaukums ;

1. piemērs

Šis piemērs ilustrē rādītāja atgriešanos no funkcijas C++ valodā:



#include

izmantojot nosaukumvieta std ;

nederīgs rezultāts ( starpt & a )

{

a + = 10 ;

}

starpt galvenais ( )

{

starpt x = 40 ;

//rādītājs atgriežas no funkcijas

nederīgs ( * ptr ) ( starpt & ) = & rezultāts ;

ptr ( x ) ;

cout << x << endl ;

atgriezties 0 ;

}

Šajā avota kodā tiek deklarēta nederīga rezultāta funkcija un tiek izmantota atsauce uz int a, kas tiek palielināta 10 reizes. Mainīgais x saglabā vērtību 40, un *ptr norāda uz funkciju int&. Tā kā ptr norāda uz rezultātu, x tiek palielināts par 10.





Ievades x vērtība tiek palielināta par 10 un tiek atgriezta par 50.



2. piemērs

Šis ir piemērs, kas aprēķina strādnieku nedēļas algu:

#include

izmantojot nosaukumvieta std ;

dubultā & Get WeeklyHours ( )

{

dubultā h = 32.65 ;

dubultā & stundas = h ;

atgriezties stundas ;

}

dubultā * Saņemiet algu ( )

{

dubultā algu = 42.48 ;

dubultā * Stundu alga = & algu ;

atgriezties Stundu alga ;

}

starpt galvenais ( )

{

dubultā stundas = Get WeeklyHours ( ) ;

dubultā algu = * Saņemiet algu ( ) ;

cout << 'Strādnieku nedēļas stundas: ' << stundas << endl ;

cout << 'Strādnieku stundas alga:' << algu << endl ;

dubultā Nedēļas alga = stundas * algu ;

cout << 'Strādnieku nedēļas alga:' << Nedēļas alga << endl ;

atgriezties 0 ;

}

Šajā avota kodā tiek ievadītas stundas un stundas alga. Atgriešanās rādītājs no funkcijas metodes tiek izmantots, lai piekļūtu šiem parametriem un aprēķinātu darbinieku nedēļas algu.

Zinot nedēļas stundas un stundas algu, nedēļas algu var aprēķināt, reizinot abus termiņus.

Secinājums

Programmā C++ ir iespējams atgriezt rādītāju no funkcijas. To var panākt, deklarējot atgriešanās veida funkciju kā rādītāju uz šo funkciju. Katrai izveidotajai funkcijai atmiņā ir noteikta adrese.