C ++

Funkcija prijatelja C ++

Funkcija prijatelja C ++
Funkcija je blok koda koji izvršava određeni zadatak i daje izlazne podatke. Uglavnom se koristi za uklanjanje ponavljajućeg koda. U ovom ćemo uputstvu pogledati funkciju prijatelja u C ++-u i objasniti njezin koncept na radnim primjerima.

Što je funkcija prijatelja?

Funkcija prijatelja je funkcija koja nije član i koja može pristupiti privatnim i zaštićenim članovima klase. "Friend" je ključna riječ koja se koristi da označi da je funkcija prijatelj klase. To omogućuje kompajleru da zna da je određena funkcija prijatelj dane klase. Funkcija prijatelja tada bi trebala moći pristupiti privatnom i zaštićenom članu određene klase. Bez ključne riječi friend, vanjska funkcija koja nije član može pristupiti samo javnim članovima klase.

Ključne značajke funkcije prijatelja:

Evo ključnih značajki funkcije prijatelja:

  1. Funkcija prijatelja nije u opsegu tečaja.
  2. Funkcija prijatelja ne može se pozvati pomoću instance klase.
  3. Članovima može pristupiti pomoću operatora objekta i točke.

Sintaksa funkcije prijatelja:

Evo sintakse funkcije prijatelj:

razred Class_Name_Demo

..
..
prijatelj return_Type function_Name (arg_1, arg_2,…);
;

Primjer prijateljske funkcije:

Pogledajmo sada primjer programa kako bismo razumjeli koncept funkcije prijatelja u C-u++. U donjem primjeru programa imamo klasu "Friend_Demo". Ima tri različite vrste članova podataka, tj.e., privatni, zaštićeni i javni.

Definirali smo još jednu funkciju, tj.e., “FriendDemo_Func ()” izvan dosega klase “Friend_Demo” i pokušao je pristupiti članovima (privatni, zaštićeni i javni) klase “Friend_Demo”.

Ali, kao što možete vidjeti u donjem izlazu kada kompajliramo program, on baca pogreške pri kompilaciji. Funkcija prijatelja točno će riješiti ovaj problem.

#include
pomoću prostora imena std;
razred Friend_Demo

privatni:
int i_privatno;
zaštićen:
int i_protected;
javnost:
int i_public;
;
void friendDemo_Func ()

Friend_Demo fd;
F D.i_private = 10;
F D.i_zaštićeno = 15;
F D.i_public = 20;
cout << fd.i_private << endl;
cout << fd.i_protected << endl;
cout << fd.i_public << endl;

int main ()

friendDemo_Func ();
return 0;

U prethodnom smo programu dobivali pogreške u kompilaciji dok smo pokušavali pristupiti privatnim, zaštićenim i javnim članovima klase iz funkcije koja nije član. To je zato što funkcija koja nije član ne smije pristupiti privatnim i zaštićenim članovima klase izvan opsega klase.

Sada smo u ovom primjeru proglasili funkciju “friendDemo_Func ()” kao prijatelja unutar opsega klase, tj.e., "Friend_Demo":

prijatelj void friendDemo_Func ();

Stvorili smo objekt, tj.e., "Fd" klase "Friend_Demo" unutar funkcije "friendDemo_Func ()". Sada privatnim, zaštićenim i javnim članovima klase “Friend_Demo” možemo pristupiti pomoću operatora točke. Dodijelili smo 10, 15 i 20 i_private, i_protected, odnosno i_public.

Kao što možete vidjeti u donjem izlazu, ovaj je program sada sastavljen i izveden bez ikakvih pogrešaka i ispisuje izlaz prema očekivanjima.

#include
pomoću prostora imena std;
razred Friend_Demo

privatni:
int i_privatno;
zaštićen:
int i_protected;
javnost:
int i_public;
prijatelj void friendDemo_Func ();
;
void friendDemo_Func ()

Friend_Demo fd;
F D.i_private = 10;
F D.i_zaštićeno = 15;
F D.i_public = 20;
cout << fd.i_private << endl;
cout << fd.i_protected << endl;
cout << fd.i_public << endl;

int main ()

friendDemo_Func ();
return 0;

Zaključak:

U ovom sam članku objasnio koncept funkcije prijatelja u C-u++. Također sam pokazao dva radna primjera kako bih objasnio kako se funkcija prijatelja ponaša u C-u++. Funkcija prijatelja ponekad može biti vrlo korisna u složenom programskom okruženju. Međutim, programer bi trebao biti oprezan pri prekomjernom korištenju i ugrožavanju njegovih OOP značajki.

Kontrolirajte i upravljajte kretanjem miša između više monitora u sustavu Windows 10
Dvostruki zaslon upravitelja miša omogućuje vam kontrolu i konfiguriranje kretanja miša između više monitora, usporavajući njegovo kretanje blizu gran...
WinMouse vam omogućuje prilagodbu i poboljšanje kretanja pokazivača miša na Windows računalu
Ako želite poboljšati zadane funkcije pokazivača miša, upotrijebite besplatni program WinMouse. Dodaje više značajki koje će vam pomoći da na najbolji...
Lijevi gumb miša ne radi u sustavu Windows 10
Ako s prijenosnim računalom ili stolnim računalom koristite namjenski miš, ali lijevi gumb miša ne radi u sustavu Windows 10/8/7 iz nekog razloga evo ...