1、賦值過載**如下:
class
person
//過載運算子
person&
operator
=(person &p)
//提供深拷貝,解決淺拷貝的問題
m_age =
newint
(*p.m_age)
;return
*this;}
~person()
}int
* m_age;
};
2、測試**
person p1(18
);cout <<
"p1的年齡為: "
<<
*p1.m_age << endl;
person p2(10
);cout <<
"p2的年齡為: "
<<
*p2.m_age << endl;
person p3(30
);p3 = p2 = p1;
cout <<
"p3的年齡為: "
<<
*p3.m_age << endl;
cout <<
"賦值後的p1的年齡為: "
<<
*p1.m_age << endl;
cout <<
"賦值後的p2的年齡為: "
<<
*p2.m_age << endl;
3、執行結果
p1的年齡為: 18
p2的年齡為: 10
p3的年齡為: 18
賦值後的p1的年齡為: 18
賦值後的p2的年齡為: 18
請按任意鍵繼續.
..
過載運算子,拷貝賦值運算子
一 過載運算子 在c語言當中遇到有很多的運算子,如 等等。如果我們用 對兩個物件進行判斷是否相等,系統就不樂意了,它不知道怎麼樣去判斷兩個物件是否相等?比如,我定義了乙個類,class a a obj1 a obj2 if obj1 obj2 錯誤,系統判斷不了 原因分析 系統遇到兩個物件之間的判斷...
C 過載運算子
運算子過載是一種形式的c 多型。在c 中,編譯器有能力把乙個由資料 物件和操作符共同組成的表示式,解釋為對乙個全域性或成員函式的呼叫。該全域性或成員函式被稱為操作符函式,通過重定義操作符函式,可以實現針對自定義型別 結構,類 的運算法則,並使之與內建型別一樣參與各種表示式。過載運算子可使 看起來更加...
C 過載運算子
本文主要講述加號運算子 自增運算子 流提取運算子運 流插入運算子 先給出vector類 class vector 建構函式 vector const vector v 拷貝建構函式 vector operator const vector v 過載 vector operator 過載前置自增運算子...