编写程序:1.定义一个Point类来处理三维点points(x,y,z
编写程序:1.定义一个Point类来处理三维点points(x,y,z
编写程序:
1.\x09定义一个Point类来处理三维点points(x,y,z).该类有一默认的constructor,一copy constructor,一negate()成员函数将point的x,y和z值各乘-1,一norm()成员函数返回该点到原点(0,0,0)的距离,一个print()成员函数显示x,y,和z的值.
2.定义一个Person类,它的每个对象表示一个人.数据成员必须包含姓名、出生年份、死亡年份,一个默认的构造函数,一析构函数,读取数据的成员函数,一个print()成员函数显示所有数据.
3.定义一个Shape基类,由它派生出Rectanglr和Circle类,二者都有GetArea( )函数计算对象的面积.使用Rectangle 类创建一个派生类Square.
4.定义一个Shape抽象类,由它派生出Rectanglr和Circle类,二者都有GetArea( )函数计算对象的面积,GetPerim( ) 函数计算对象的周长.
编写程序:
1.\x09定义一个Point类来处理三维点points(x,y,z).该类有一默认的constructor,一copy constructor,一negate()成员函数将point的x,y和z值各乘-1,一norm()成员函数返回该点到原点(0,0,0)的距离,一个print()成员函数显示x,y,和z的值.
答:#include
#include
class Point
{ public:
Point(float x=0,float y=0,float z=0):x_(x),y_(y),z_(z) { }
Point(const Point& p) :x_(p.x_),y_(p.y_),z_(p.z_) { }
void negate() { x_ *= -1; y_ *= -1; z_ *= -1; }
double norm() { return sqrt(x_*x_ + y_*y_ + z_*z_); }
void print()
{ cout