(2)实验指导书P107 3
三、实验环境
联想计算机,Windows XP操作系统,Visual C++ 6.0
四、算法描述及实验步骤
(1)编写源程序。
(2)检查程序有无错误(包括语法错误和逻辑错误),有则改之。
(3)编译和连接,仔细分析编译信息,如有错误应找出原因并改正之。 (4)运行程序,分析结果。
(5)将调试好的程序保存在自己的用户目录中,文件名自定。
五、调试过程
在类Time中漏掉‘void gettime();‘语句导致错误。
六、实验结果
(1)
(2)
七、总结
(1)掌握了运算符重载的应用。 (2)了解到运算符重载的形式。
附录:
代码如下: (1)//sy6_1.cpp #include
{
public:
complex(){real=imag=0.0;}
complex(double r){real=r;imag=0.0;} complex(double r,double i){real=r;imag=i;} complex operator+(const complex &c); complex operator-(const complex &c); complex operator*(const complex &c); complex operator/(const complex &c); friend void print(const complex &c);
private:
double real,imag; };
inline complex complex::operator+(const complex &c) {
return complex(real+c.real,imag+c.imag); }
inline complex complex::operator-(const complex &c) {
return complex(real-c.real,imag-c.imag);
}
inline complex complex::operator*(const complex &c)
{
return complex(real*c.real-imag*c.imag,real*c.imag+imag*c.real); }
inline complex complex::operator/(const complex &c) {
return complex((real*c.real+imag*c.imag)/(c.real*c.real+c.imag*c.imag),
(imag*c.real-real*c.imag)/(c.real*c.real+c.imag*c.imag));
}
void print(const complex &c) {
if(c.imag<0)
 cout< cout<   }  int main()  {  complex c1(2.0),c2(3.0,-5.0),c3;  c3=c1+c2;          cout<<\print(c3); c3=c1-c2;  cout<<\print(c3); c3=c1*c2;              cout<<\print(c3); c3=c1/c2;  cout<<\ print(c3);  c3=(c1+c2)*(c1-c2)*c2/c1;  cout<<\print(c3); cout<  return 0;} (2)//sy6_2.cpp #include using namespace std;  class Time {       public:   Time(){hours=0;minutes=0;seconds=0;}        Time(int h,int m,int s) {   hours=h;minutes=m;seconds=s;    }         Time operator+(Time&);          void gettime();   private:   int hours,minutes,seconds; };  Time Time::operator+(Time& time) { int h,m,s;          s=time.seconds+seconds;   m=time.minutes+minutes+s/60;   h=time.hours+hours+m/60;   Time result(h,m`,s`);   return result; }  void Time::gettime()    {    cout<      Time t1(8,51,40),t2(4,15,30),t3;    t3=t1+t2;      t3.gettime();     return 0;}                实验7  模板  一、实验目的和要求  (1)能够使用c++模板机制定义重载函数。 (2)能够实例化及使用函数模板。 (3)能够实例化和使用类模板。  (4)应用标准c++模板库(STL)通用算法和函数对象实现查找与排序。  二、实验内容和原理  (1)实验指导书P109 1 (2)实验指导书P112 4   三、实验环境  联想计算机,Windows XP操作系统,Visual C++ 6.0  四、算法描述及实验步骤  (1)编写源程序。  (2)检查程序有无错误(包括语法错误和逻辑错误),有则改之。   (3)编译和连接,仔细分析编译信息,如有错误应找出原因并改正之。 (4)运行程序,分析结果。  (5)将调试好的程序保存在自己的用户目录中,文件名自定。  五、调试过程