构造函数实例

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/LYJ_viviani/article/details/70155297
#include <iostream>
#include <string>
using namespace std;

class Complex
{
private:
    double real, imag;
public:
    Complex(double r);
    Complex(double r, double i);
    Complex(Complex  c1, Complex  c2);
};

Complex::Complex(double r)  //构造函数1
{
    real = r; imag = 100;
    cout << real << "--" << imag << endl;
}
Complex::Complex(double r, double i)  //构造函数2
{
    real = r; imag = i;
    cout << real << "--" << imag << endl;
}
Complex::Complex(Complex  c1, Complex  c2) //构造函数3
{
    real = c1.real + c2.real;
    imag = c1.imag + c2.imag;
    cout << real << "--" << imag << endl;
}
int main()
{
    Complex c0;            //报错,没有无参构造函数(默认构造函数)
    Complex c1(3);         //调用构造函数1,结果为:3--100
    Complex c2(1, 2);      //调用构造函数2,结果为:1--2
    Complex c3(c1, c2);    //调用构造函数3,结果为:4--102
    Complex c4 = 5;        //调用构造函数1,结果为:5--100
    Complex c5 = { 10,15 };//调用构造函数2,结果为:10--15
    return 0;
}

猜你喜欢

转载自blog.csdn.net/LYJ_viviani/article/details/70155297