zoukankan      html  css  js  c++  java
  • c++旧教材--p82(调用复制的构造函数)

    源程序:

    #include <iostream>

    using namespace std;

    class Point

    {

    private:

      int X,Y;

    public:

      Point(int a=0,int b=0)    //构造函数,默认参数

      {

        X=a;

        Y=b;

        cout<<"Initializing"<<endl;

      }

      Point(const Point &p);   //复制构造函数

      int GetX()

      {

        return X;

      }

      int GetY()

      {

        return Y;

      }

      void Show()

      {

        cout<<"X="<<X<<",Y="<<Y<<endl;

      }

      ~Point()

      {

        cout<<"delete..."<<X<<","<<Y<<endl;

      }

    };

    Point::Point(const Point &p)    //定义复制构造函数

    {

      X=p.X;

      Y=p.Y;

      cout<<"Copy Initializing"<<endl;

    }

    void display(Point p)    //对象作为参数

    {

      p.Show();

    }

    void disp(Point &p)      //对象的引用作为函数的参数

    {

      p.Show();

    }

    Point fun()

    {

      Point A(101,202);

      return A;            //函数的返回值是对象

    }

    void main()

    {

          Point A(42,35);

      Point B(A);       //对象A初始化对象B,第一次调用复制构造函数

      Point C(58,94);

      cout<<"called display(B)"<<endl;

      display(B);       //对象B是函数的参数,第二次调用复制构造函数

      cout<<"Next..."<<endl;

      cout<<"called disp(B)"<<endl;

      disp(B);

      cout<<"call C=fun()"<<endl;

      C=fun();          //对象C是函数的返回值,第三次调用复制构造函数

      cout<<"called disp(C)"<<endl;

      disp(C);

      cout<<"out..."<<endl;

    }

    运行结果:

     

  • 相关阅读:
    手机发送验证码—.net代码
    AJAX之XMLHttpRequest
    JQuery总结+实例
    ASP.NET总结——更改后
    css总结——position
    JavaScript的程序构成
    初识javascript
    asp总结
    北大青鸟代码---asp.net初学者宝典
    iOS常用技术-Label自适应
  • 原文地址:https://www.cnblogs.com/duanqibo/p/12021988.html
Copyright © 2011-2022 走看看