C ++

C ++ drauga funkcija

C ++ drauga funkcija
Funkcija ir koda bloks, kas veic noteiktu uzdevumu un nodrošina izvadi. To galvenokārt izmanto, lai novērstu atkārtotu kodu. Šajā apmācībā mēs izpētīsim drauga funkciju C ++ un izskaidrosim tās koncepciju ar darba piemēriem.

Kas ir drauga funkcija?

Drauga funkcija ir funkcija, kas nav dalībniece, un kas var piekļūt klases privātajiem un aizsargātajiem dalībniekiem. “Draugs” ir atslēgvārds, ko lieto, lai norādītu, ka funkcija ir klases draugs. Tas ļauj sastādītājam uzzināt, ka konkrētā funkcija ir dotās klases draugs. Tad drauga funkcijai vajadzētu būt iespējai piekļūt konkrētās klases privātajam un aizsargātajam loceklim. Bez drauga atslēgvārda ārpuses funkcija, kas nav dalībniece, var piekļūt tikai klases publiskajiem dalībniekiem.

Drauga funkcijas galvenās iezīmes:

Šeit ir galvenās drauga funkcijas iezīmes:

  1. Drauga funkcija nav klases darbības sfērā.
  2. Drauga funkciju nevar izsaukt, izmantojot klases instanci.
  3. Tas var piekļūt dalībniekiem, izmantojot objektu un punktu operatoru.

Drauga funkcijas sintakse:

Šeit ir drauga funkcijas sintakse:

klase Class_Name_Demo



draugs return_Type function_Name (arg_1, arg_2,…);
;

Drauga funkcijas piemērs:

Tagad apskatīsim programmas piemēru, lai izprastu drauga funkcijas jēdzienu C++. Zemāk esošajā programmas piemērā mums ir klase “Friend_Demo”. Tam ir trīs dažādi datu biedru veidi, t.i.e., privāta, aizsargāta un publiska.

Mēs esam definējuši vēl vienu funkciju, t.i.e., “FriendDemo_Func ()” ārpus klases “Friend_Demo” darbības jomas un mēģināja piekļūt klases “Friend_Demo” dalībniekiem (privātiem, aizsargātiem un publiskiem).

Bet, kā redzat zemāk esošajā izvadā, kad mēs apkopojam programmu, tas rada kompilācijas kļūdas. Drauga funkcija precīzi atrisinās šo problēmu.

# iekļaut
izmantojot nosaukumvietu std;
klase Draugs_Demo

Privāts:
int i_private;
aizsargāts:
int i_aizsargāts;
publiski:
int i_public;
;
void friendDemo_Func ()

Friend_Demo fd;
fd.i_privatais = 10;
fd.i_aizsargāts = 15;
fd.i_public = 20;
cout << fd.i_private << endl;
cout << fd.i_protected << endl;
cout << fd.i_public << endl;

int main ()

friendDemo_Func ();
atgriešanās 0;

Iepriekšējā programmā mēs mēģinājām piekļūt klases privātajiem, aizsargātajiem un publiskajiem locekļiem, izmantojot funkciju, kas nav dalībniece, mēs sastādījām kļūdas kompilācijā. Tas ir tāpēc, ka funkcijai, kas nav dalībniece, nav atļauts piekļūt klases privātajiem un aizsargātajiem dalībniekiem ārpus klases darbības jomas.

Šajā piemērā mēs esam paziņojuši, ka funkcija “friendDemo_Func ()” ir draugs klases darbības sfērā, t.e., “Friend_Demo”:

friend void friendDemo_Func ();

Mēs esam izveidojuši objektu, t.i.e., Funkcijas “friendDemo_Func ()” iekšpusē “Friend_Demo” klases “fd”. Tagad mēs varam piekļūt klases “Friend_Demo” privātajiem, aizsargātajiem un publiskajiem dalībniekiem, izmantojot punktu operatoru. Mēs esam piešķīruši attiecīgi 10, 15 un 20 i_private, i_protected un i_public.

Kā redzat zemāk esošajā izvadē, šī programma tagad tiek apkopota un izpildīta bez kļūdām un izdrukā izvadi, kā paredzēts.

# iekļaut
izmantojot nosaukumvietu std;
klase Draugs_Demo

Privāts:
int i_private;
aizsargāts:
int i_aizsargāts;
publiski:
int i_public;
friend void friendDemo_Func ();
;
void friendDemo_Func ()

Friend_Demo fd;
fd.i_privatais = 10;
fd.i_aizsargāts = 15;
fd.i_public = 20;
cout << fd.i_private << endl;
cout << fd.i_protected << endl;
cout << fd.i_public << endl;

int main ()

friendDemo_Func ();
atgriešanās 0;

Secinājums:

Šajā rakstā es esmu izskaidrojis drauga funkcijas jēdzienu C++. Esmu parādījis arī divus piemērus, lai izskaidrotu, kā drauga funkcija darbojas C++. Dažreiz drauga funkcija var būt ļoti noderīga sarežģītā programmēšanas vidē. Tomēr programmētājam vajadzētu būt piesardzīgam pret tā pārmērīgu izmantošanu un OOP funkciju apdraudēšanu.

AppyMouse ekrāna skārienpaliktnis un peles rādītājs Windows planšetdatoriem
Planšetdatoru lietotājiem bieži pietrūkst peles rādītāja, it īpaši, ja viņi parasti lieto klēpjdatorus. Skārienekrāna viedtālruņiem un planšetdatoriem...
Vidējā peles poga nedarbojas sistēmā Windows 10
The peles vidējā poga palīdz jums ritināt garas tīmekļa lapas un ekrānus ar lielu datu daudzumu. Ja tas apstājas, jūs galu galā izmantosiet tastatūru,...
Kā nomainīt peles kreiso un labo pogu operētājsistēmā Windows 10
Tas ir diezgan normāli, ka visas datora peles ierīces ir ergonomiski izstrādātas lietotājiem ar labo roku. Bet ir pieejamas peles ierīces, kas ir īpaš...