008:超简单的复数类
总时间限制:
1000ms
内存限制:
65536kB
// 在此处补充你的代码
描述
下面程序的输出是:
3+4i
5+6i
请补足Complex类的成员函数。不能加成员变量。
#include <iostream> #include <cstring> #include <cstdlib> using namespace std; class Complex { private: double r,i; public: void Print() { cout << r << "+" << i << "i" << endl; }
}; int main() { Complex a; a = "3+4i"; a.Print(); a = "5+6i"; a.Print(); return 0; }
输入
无
输出
3+4i
5+6i
样例输入
无
样例输出
3+4i 5+6i
来源
Guo Wei
这里有两种写法,一种是直接构造函数,不需要加const限定词,另外一种是运算符重载,需要加const限定词,否则编译通过不了,完整代码
#include <iostream>
#include <cstring>
#include <cstdlib>
using namespace std;
class Complex {
private:
double r, i;
public:
void Print() {
cout << r << "+" << i << "i" << endl;
}
/*Complex & operator= (const char* str)
{
this->r = str[0] - '0';
this->i = str[2] - '0';
return *this;
}*/
Complex(){}
Complex(char* str)
{
r = str[0] - '0';
i = str[2] - '0';
}
};
int main() {
Complex a;
a = "3+4i"; a.Print();
a = "5+6i"; a.Print();
return 0;
}