|
|
Friend Function
|
O taht dos dados é declarado como confidencial dentro da classe não pode ser alcançado fora de uma classe. A função que não é a função do membro ou a classe que é lata externa nunca alcança estes dados confidenciais. Mas pode também haver alguns dos casos, onde o programador necessita o acesso aos dados confidenciais, qualquer um do non-member funciona e as classes externas. C++ oferecerá algumas das exceções nestes casos.
|
- Uma vez que a função do non-member é declarada como o amigo, pode começar o acesso aos dados confidenciais de uma classe.
- similarmente quando a classe é declarada como o amigo, a classe do amigo pode ter o acesso aos dados confidenciais de uma classe que faça esta como um amigo
|
#include <iostream.h>
//Declaration of the function to be made as friend for the C++ Tutorial sample
int AddToFriend(int x);
class CPP_Tutorial
{
int private_data;
friend int AddToFriend(int x);
public:
CPP_Tutorial()
{
private_data = 5;
}
};
int AddToFriend(int x)
{
CPP_Tutorial var1;
return var1.private_data + x;
}
int main()
{
cout << "Added Result for this C++ tutorial: "<< AddToFriend(4)<<endl;
}
|
|
A Friend Class:
|
Declarar um amigo que a classe é também mesma, a única coisa diferente é classe a definição é diferente mordido.
|
#include < iostream.h >
class CPP_Tutorial
{
int private_data;
friend class friendclass;
public:
CPP_Tutorial()
{
private_data = 5;
}
};
class friendclass
{
public:
int subtractfrom(int x)
{
CPP_Tutorial var2;
return var2.private_data - x;
}
};
int main()
{
friendclass var3;
cout << "Added Result for this C++ tutorial: "<< var3.subtractfrom(2)
}
|
|
Keywords c++ friend functions, cpp tutorial, cpp c++, string cpp, cpp array, cpp example,
windows cpp, cpp using, array functions, variable functions, cpp h, functions variables,
cpp dll, string functions, functions tutorial, object functions, using functions,
functions example
|