[SOLVED] problem z friend
Z pAmIęTnIkA nIeGrZeCzNeGo AnIołkA
Mam taki program:Kod:
class a
{
public:
void f_z(b&);
int q;
};
class b
{
private:
int aa;
public:
friend void a::f_z(b&);
};
int main()
{
a A;
b B;
}
void a::f_z(b& Q)
{
Q.aa=4;
}
Nie rozumiem dla czego nie mogê tego skompilowaæ. Chodzi mi o to ¿eby funkcja z klasy 'a' mia³a dostêp to czê¶ci private klasy 'b'.
Kompilator wrzuca mi co¶ takiego:
Kod:
f.cpp:4: error: ‘b’ has not been declared
f.cpp:12: error: prototype for ‘void a::f_z(b&)’ does not match any in class ‘a’
f.cpp:4: error: candidate is: void a::f_z(int&)
f.cpp: In member function ‘void a::f_z(b&)’:
f.cpp:10: error: ‘int b::aa’ is private
f.cpp:27: error: within this context
W³a¶nie kto¶ mi doradzi³, ¿eby na pocz±dku dodaæ Kod: class b; , ale niewiem dlaczego.