|
发表于 2020-3-31 20:13:46
|
显示全部楼层
我不知道这是不是你想要的
- #include <iostream>
- class Complex //complex表示“复数”
- {
- public:
- Complex();
- Complex(double r,double i);
- Complex complex_add(Complex &d);
- void print();
- private:
- double real;
- double imag;
- //}; // 这里你还用了中文的分号?
- };
- Complex::Complex()
- {
- std::cout << "Complex::Complex()" << std::endl;
- real = 0;
- imag = 0;
- }
- Complex::Complex(double r,double i)
- {
- std::cout << "Complex::Complex(double r,double i)" << std::endl;
- std::cout << "r=" << r << ",i=" << i << std::endl;
- real = r;
- imag = i;
- }
- Complex Complex::complex_add(Complex &d)
- {
- std::cout << "Complex Complex::complex_add(Complex &d)" << std::endl;
- Complex c;
- c.real = real + d.real;
- c.imag = imag + d.imag;
- return c;
- }
- void Complex::print()
- {
- //std::cout<<”(”<<real<<”,”<<imag<<”i)\n”; // 这个双引号比较奇怪
- std::cout << "(" << real << "," << imag << "i)\n";
- }
- int main()
- {
- Complex c1(3,4),c2(5,-10),c3;
- c3 = c1.complex_add(c2);
- return 0;
- }
复制代码
- $ ./main
- Complex::Complex(double r,double i)
- r=3,i=4
- Complex::Complex(double r,double i)
- r=5,i=-10
- Complex::Complex()
- Complex Complex::complex_add(Complex &d)
- Complex::Complex()
复制代码
这个是43行创建c1对象的时候输出的
- Complex::Complex(double r,double i)
- r=3,i=4
复制代码
这个是创建c2对象
- Complex::Complex(double r,double i)
- r=5,i=-10
复制代码
接下来的这个是创建c3对象,使用的是默认构造函数
输出这个,说明执行完了30行
- Complex Complex::complex_add(Complex &d)
复制代码
最后这个是第31行创建对象c的时候输出的
|
|