0
當我執行下面的代碼時,會產生2個錯誤c1 :: x無法訪問和丟失)在line9中。請解釋。在此先感謝...如何在C++中使用普通的朋友函數?
#include<iostream>
class c1{
int x;
public:
void input(){
cout<<"Enter length : ";
cin>>x;
}
friend void output(c1 obj1, c2 obj2);
};
class c2{
int y;
public:
void input(){
cout<<"Enter breadth : ";
cin>>y;
}
friend void output(c1 obj1, c2 obj2);
};
void output(c1 obj1, c2 obj2){
cout<<"Area is "<<obj1.x*obj2.y;
}
int main(){
c1 obj1;
c2 obj2;
clrscr();
obj1.input();
obj2.input();
output(obj1, obj2);
getch();
return 0;
}
看起來你需要像'class c2;'這樣在'c1'前面聲明'c2'。 –
你不應該聲明兩次函數... –