[链接]如何编写异常安全的C++代码

写的不错的关于c++异常的文章

http://blog.csdn.net/wingfiring/article/details/660900

1) 下面是“平面上点”类的定义: class CPoint { private: int x, y; static int nCount; // nCount用于保存点的个数 public: CPoint(int px=0, int py=0); CPoint(CPoint&); ~CPoint(); int GetX(); int GetY(); void SetX(int); void SetY(int); void ShowPoint(); }; 请完成该类中各成员函数的定义。 2) 下面是“平面上线段”类的定义: class CLine { private: CPoint pt1, pt2; //pt1和pt2分别代表该线段的起点和终点 public: CLine(); CLine(int x1,int y1,int x2,int y2); CLine(CPoint p1,CPoint p2); double Distance(); //计算该线段长度的成员函数 void ShowLine(); }; 请完成该类中各成员函数的定义。并利用VC调试工具观察含有组合关系类的构造函数和析构函数的执行情况。 3) 下面是“空间中点”类的定义: class CThreePoint:public CPoint { private: int z; public: CThreePoint(); CThreePoint(int, int, int); int GetZ(); void SetZ(int pz); virtual void ShowPoint(); }; 请完成该类中各成员函数的定义。并利用VC调试工具观察含有继承关系类的构造函数和析构函数的执行情况。分析为什么要把ShowPoint()函数设置为虚函数?有什么作用?请在main()函数中做测试。 4) 定义一个基类Animal,有私有整型成员变量age,构造其派生类dog,在其成员函数SetAge(int n)中直接给age赋值,看看会有什么问题,把age改为公有成员变量,还会有问题吗?把age改为保护成员变量呢?编程试试看。 5) 定义一个车(vehicle)基类,具有MaxSpeed、Weight等成员变量,Run、Stop等成员函数,由此派生出自行车(bicycle)类、汽车(motorcar)类。自行车(bicycle)类有高度(Height)等属性,汽车(motorcar)类有座位数(SeatNum)等属性。从bicycle和motorcar派生出摩托车(motorcycle)类,它们都有Run、Stop等成员函数。观察虚函数的作用。在继承过程中,注意把vehicle设置为虚基类。如果不把vehicle设置为虚基类,会有什么问题?编程试试看。 6) 参考题目2中Cline类的编写编写一个空间中线段CThreeLine类。并在该类中观察构造函数的执行顺序。(选做)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值