我試圖加2個複數在一起,但我得到的錯誤複數:添加使用類
沒有運營商「+」這些操作數
沒有運營商「< <」匹配這些比賽操作數
#include <iostream>
using namespace std;
class complex
{
public:
double get_r() { return r; }
void set_r(double newr) { r=newr; }
double set_i() { return i; }
void set_i(double newi) { i = newi; }
private:
double r, i;
};
int main()
{
complex A, B;
A.set_r(1.0);
A.set_i(2.0);
B.set_r(3.0);
B.set_i(2.0);
complex sum = A+B;
cout << "summen er: " << sum << endl;
system("PAUSE");
return 0;
};
我對編程非常陌生,但我不明白爲什麼它不會將這些數字加在一起。我做錯了什麼?
它是*你的類,那麼編譯器如何知道你想將它們加在一起? – crashmstr
我不知道你想達到什麼,但也許你應該考慮使用std :: complex; –
如果您想了解更多關於複雜類的實現,請看看GNU ISO C++庫如何實現std :: complex(https://gcc.gnu.org/onlinedocs/gcc-4.6.3/libstdc++/ api/a00812_source.html) –