繼承中的特點(diǎn)
有public, protected, private三種繼承方式,它們相應(yīng)地改變了基類成員的訪問屬性。
1.public 繼承:基類 public 成員,protected 成員,private 成員的訪問屬性在派生類中分別變成:public, protected, private
2.protected 繼承:基類 public 成員,protected 成員,private 成員的訪問屬性在派生類中分別變成:protected, protected, private
3.private 繼承:基類 public 成員,protected 成員,private 成員的訪問屬性在派生類中分別變成:private, private, private
但無論哪種繼承方式,上面兩點(diǎn)都沒有改變:
1.private 成員只能被本類成員(類內(nèi))和友元訪問,不能被派生類訪問;
2.protected 成員可以被派生類訪問。
函數(shù)重載
在同一個(gè)作用域內(nèi),可以聲明幾個(gè)功能類似的同名函數(shù),但是這些同名函數(shù)的形式參數(shù)(指參數(shù)的個(gè)數(shù)、類型或者順序)必須不同。您不能僅通過返回類型的不同來重載函數(shù)。
運(yùn)算符重載
您可以重定義或重載大部分 C++ 內(nèi)置的運(yùn)算符。這樣,您就能使用自定義類型的運(yùn)算符。
重載的運(yùn)算符是帶有特殊名稱的函數(shù),函數(shù)名是由關(guān)鍵字 operator 和其后要重載的運(yùn)算符符號構(gòu)成的。與其他函數(shù)一樣,重載運(yùn)算符有一個(gè)返回類型和一個(gè)參數(shù)列表。
Box operator+(const Box&);
聲明加法運(yùn)算符用于把兩個(gè) Box 對象相加,返回最終的 Box 對象。大多數(shù)的重載運(yùn)算符可被定義為普通的非成員函數(shù)或者被定義為類成員函數(shù)。如果我們定義上面的函數(shù)為類的非成員函數(shù),那么我們需要為每次操作傳遞兩個(gè)參數(shù),如下所示:
Box operator+(const Box&, const Box&);
版權(quán)聲明:摘自 http://www.runoob.com