Chinaunix首页 | 论坛 | 博客
  • 博客访问: 7688331
  • 博文数量: 961
  • 博客积分: 15795
  • 博客等级: 上将
  • 技术积分: 16612
  • 用 户 组: 普通用户
  • 注册时间: 2010-08-07 14:23
文章分类

全部博文(961)

文章存档

2016年(1)

2015年(61)

2014年(41)

2013年(51)

2012年(235)

2011年(391)

2010年(181)

分类: C/C++

2011-08-03 21:33:50

/*

 * 复制构造函数

 * 用一个已知的对象初始化另一个对象

 * Lzy      2011-8-3

 */

#include

using namespace std;

 

class Complex

{

private:

    double rel, img;

public:

    Complex(double x, double y):rel(x),img(y){}

    Complex(const Complex &c):rel(c.rel),img(c.img){cout<<"构造函数被调用"<

    void GerRel(){cout<

    void GerImg(){cout<

};

 

int main(void)

{

    Complex c1(2.3,5.6);

    c1.GerImg();

    c1.GerRel();

 

    Complex c2(c1);

    c2.GerImg();

    c2.GerRel();

 

    return 0;

}

 

/*

 * 复制初始化构造函数的其他用法

 * Lzy      2011-8-3

 */

#include

using namespace std;

 

class Complex

{

private:

    double rel, img;

public:

    Complex(double x=5.0, double y=3.0):rel(x),img(y){}

    Complex(const Complex &c):rel(c.rel),img(c.img){cout<<"复制构造函数被调用"<

    double GetRel(void){cout<return rel;}

    double GetImg(void){cout<return img;}

};

 

Complex fun(Complex c)

{

    double x, y;

    x = c.GetRel()*10;

    y = c.GetImg()*10;

    Complex temp(x,y);

    return temp;

}

 

int main(void)

{

    Complex c1(1.1, 2.2),c2;

    c2 = fun(c1);

    c2.GetRel();

    c2.GetImg();

   

    return 0;

}

阅读(1874) | 评论(1) | 转发(2) |
0

上一篇:C++类对像作业

下一篇:析构函数实例

给主人留下些什么吧!~~

sabrisu2011-11-13 12:40:18

最后一个例子没有调用copy构造函数