注册 登录
编程论坛 C语言论坛

小白求助!请问这段程序的问题在哪?

编程小白DIO 发布于 2020-03-14 17:31, 1549 次点击
谢谢能点进来!
在网上实在是搜不到有效的办法了,希望大神能指点一下。
下面是程序
#include<iostream>
using namespace std;

void Complex::add(Complex t)
{
    a = a + t.a;
    b = b + t.b;
}

void Complex::show()
{
    cout << a<< "+" << b <<"i"<< endl;
}

class Complex
{
public:
    Complex(double x1, double x2) :a(x1), b(x2) {};
    Complex(double x1) :a(x1),b(0) {  };
    void show();
    void add(Complex t);
private:
    double a, b;

};

int main()
{
    Complex c1(3, 5);             //用复数3+5i初始化c1
    Complex c2 = 4.5;           //用实数4.5初始化c2
    c1.add(c2);                       //将c1与c2相加,结果保存在c1中
    c1.show();          //将c1输出(这时候的结果应该是7.5+5i)
    return 0;
}
以下是尝试运行后的结果。
只有本站会员才能查看附件,请 登录

已经尝试过在第一行加上#include "stdafx.h",但是会提示说无法打开包括文件。
2 回复
#2
xianfajushi2020-03-14 17:46
程序代码:

class Complex
{
public:
    Complex(double x1, double x2) :a(x1), b(x2) {};
    Complex(double x1) :a(x1),b(0) {  };
    void show();
    void add(Complex t);
private:
    double a, b;

};
void Complex::add(Complex t)
{
    a = a + t.a;
    b = b + t.b;
}
void Complex::show()
{
    cout << a<< "+" << b <<"i"<< endl;
}

int main()
{
    Complex c1(3, 5);             //用复数3+5i初始化c1
    Complex c2 = 4.5;           //用实数4.5初始化c2
    c1.add(c2);                       //将c1与c2相加,结果保存在c1中
    c1.show();          //将c1输出(这时候的结果应该是7.5+5i)
    return 0;
}
#3
编程小白DIO2020-03-14 17:48
回复 2楼 xianfajushi
原来是顺序搞错了,谢谢你!
1