8
我正在定義一個類NS,我希望能夠對這個類的對象執行數學運算。我,成功編譯重載+, - ,*,/,... 我的問題是,我不能編譯其中有一部分像這樣的代碼:C++操作符重載,定義對象的負數
NS a,b;
a = -b;
我如何定義負的對象?
我正在定義一個類NS,我希望能夠對這個類的對象執行數學運算。我,成功編譯重載+, - ,*,/,... 我的問題是,我不能編譯其中有一部分像這樣的代碼:C++操作符重載,定義對象的負數
NS a,b;
a = -b;
我如何定義負的對象?
你可以用非常相似的方式重載二進制運算符-
。相反,如果它是一個成員,那麼它就成爲一個無功功能,如果它是非成員,則成爲一元功能。例如,作爲一個成員:
class NS
{
public:
// Applies to this
NS operator-() { /* implement */ }
};
作爲一個非成員:
class NS
{
friend NS operator-(const NS&);
};
// Applies to obj
NS operator-(const NS& obj) { /* implement */ }
通過閱讀你的C++的書! – 2013-04-27 12:45:15