C++中怎样在一个类中引用另一个类的私有数据

如题所述

第1个回答  2011-04-09
#include<iostream>
using namespace std;
#include<math.h>
class Point
{public:
Point(){x=0;y=0;}
void set();
friend class Jx;//定义友元类
private:
double x;
double y;
};
void Point::set()
{
cout<<"x=";
cin>>x ;
cout<<"y=";
cin>>y;

}
class Jx
{
public:
friend class Point;
void print();

private:
Point a;
Point b; //我就是想在JX类中
Point c;
};
void Jx::print()
{
cout << a.x << a.y << endl;//使用point类中的点坐标X,Y

}
int main()
{
return 0;
}
第2个回答  2011-04-05
比如要在B类中访问A类的私有数据,那么就在A类中声明B类为其友员类就OK了。
第3个回答  2011-04-05
这两个类有关系吗?追问

#include
using namespace std;
#include
class Point
{public:
Point(){x=0;y=0;}
void set();
//private:
double x;
double y;
};
void Point::set()
{
cout>x ;
cout>y;

}class Jx
{
public:

private:
Point a;
Point b; //我就是想在JX类中引用point类中的点坐标X,Y
Point c;
};

追答

没有继承关系的类想用私有的数据可以写方法
例如
在point类中
double GetX()
{
return x;
}
然后在jx中调用Getx方法就可以得到x的值了

本回答被网友采纳
第4个回答  2011-04-05
友元
相似回答