Home - Rasfoiesc.com
Educatie Sanatate Inginerie Business Familie Hobby Legal
Satisfactia de a face ce iti place. tutorial, lectii online, solutii simple, exmeple, programe, C++

Biologie Chimie Didactica Fizica Geografie Informatica
Istorie Literatura Matematica Psihologie

C


Index » educatie » » informatica » C
Functii prietene


Functii prietene


Functii prietene

In general membrii privati ai unei clase nu pot fi accesati din afara clasei in care au fost declarati. Aceasa regula are o exceptie. O clasa poate declara o lista de functii externe drept prietene ale clasei, folosind cuvantul cheie friend. Aceste functii prietene vor avea acces la membrii privati ai clasei. Pentru a declara o functie prietena, vom folosi urmatoarea sintaxa in corpul clasei:

friend <prototipul functei prietene>;

Exemplu:

// functie prietena

#include<iostream>

#include<conio.h>

using namespace std;

class Dreptunghi

//declaratie functie prietena

friend Dreptunghi dublu(Dreptunghi);



};

void Dreptunghi::setValori(int a, int b)

Dreptunghi dublu(Dreptunghi drParam)

int main ()

24

Functia dublu este prietena a clasei Dreptunghi. Din corpul ei avem dreptul sa accesam membrii privati lungime si latime a diferitor obiecte de tip Dreptunghi. Remarcam ca functia dublu nu este membru a clasei Dreptunghi. Este o functie globala. Dar are acces la membrii privati ai lui Dreptunghi.

Functiile prietene sunt utile uneori, pentru a efectua operatii cu doua clase diferite. Atunci cand este nevoie ca functia sa aiba acces la membrii privati ai ambelor clase. In acest caz functia poate fi declarata globala, dar prietena cu ambele clase. Conceptul de prietenie nu face parte din programarea orientata obiect. In general, functiile prietene trebuie evitate si inlocuite cu functii membre a claselor. In exemplul precedent, ar fi fost mai simplu sa declaram functia dublu membra a clasei Dreptunghi.






Politica de confidentialitate
C


Access
Adobe photoshop
Autocad
Baze de date
C
Calculatoare
Corel draw
Excel
Foxpro
Html
Internet
Java
Linux
Mathcad
Matlab
Outlook
Pascal
Php
Powerpoint
Retele calculatoare
Sql
Windows
Word

EXPRESII SI INSTRUCTIUNI
DECLARATII SI CONSTANTE
Functii prietene
Supraincarcarea functiilor















 
Copyright © 2019 - Toate drepturile rezervate