等號操作符過載

2021-08-07 18:08:57 字數 779 閱讀 5685

當是涉及到深拷貝是,一種解決方式就是自己寫建構函式處理深拷貝,另一種方式就是等號操作符過載

等號操作符過載例項:

#define _crt_secure_no_warnings

#include using namespace std;

/*單目運算子過載*/

class eqptor

eqptor(eqptor &opp)

/*等號操作符過載*/

#if 0 /*等號操作符過載方式1*/

void operator=(eqptor &opp1)

this->str_length = opp1.str_length;

this->str = new char[str_length + 1];

strcpy(this->str, opp1.str);

}#endif

/*等號操作符過載方式2*/

eqptor operator=(eqptor &opp1)

this->str_length = opp1.str_length;

this->str = new char[str_length + 1];

strcpy(this->str, opp1.str);

return *this;

} void print()

~eqptor() }

};int main()

system("pause");

return 0;

}

C 等號操作符過載錯誤

今天在幫同事看一段 時發現這麼乙個問題,雖然不大,但是困惑了不少時間,知道在csdn論壇上找到答案,特此記錄下來 但是,我今天碰到的問題就是,我實現了乙個等號操作符用來操作自定義類,編譯的時候,提示 void operator const a const a must be a nonstatic ...

操作符過載

ifndef vertex h define vertex h class vertex vertex float px float py float pz vertex operator const vertex p vertex operator const vertex p void oper...

操作符過載

1.操作符是靜態方法,返回值表示操作結果,引數是運算元。2.操作符過載需要在過載的操作符前加上operator關鍵字。3.最好少用操作符過載,只有在意義明晰而且與內建類的操作一致時才適合使用,以免造成混亂。以建立的分數類 fraction 中的 為例,該分數類中有兩個int型的私有屬性 分子 num...