64,654
社区成员
发帖
与我相关
我的任务
分享
class SPoint
{
private:
float data[3];
public:
SPoint():
{
memset(data,0, 3*sizeof(float));
}
SPoint(float x,float y,float z):
{
data[0] = x;
data[1] = y;
data[2] = z;
}
SPoint(const SPoint &pt):
{
memcpy(data,pt.data,3*sizeof(float));
}
void operator =(const SPoint &pt)
{
memcpy(data,pt.data,3*sizeof(float));
}
inline SPoint operator +( const SPoint &p2);//-----没有声明为友元
} ;
SPoint inline SPoint::operator +(const SPoint &p2)
{
SPoint sp;
for(int i=0;i<3;i++)
sp.data[i] = data[i] + p2.data[i];//-------但sp和p2都可以访问data私有变量!
return sp;
}
inline SPoint operator +( const SPoint &p2);//-----没有声明为友元