1、友元
友元機(jī)制允許一個類將其非公有成員的訪問權(quán)授予指定的函數(shù)或類,友元的聲明以friend關(guān)鍵字開始。友元聲明將已命名的函數(shù)或類引入了外圍的作用域,并且友元聲明的函數(shù)可以在類的內(nèi)部定義,該函數(shù)的定義域擴(kuò)展到包含該類的作用域。
2、const 成員函數(shù)
在C++中,只有被聲明為const的成員函數(shù)才能被一個const類對象調(diào)用,要聲明一個const類型的類成員函數(shù),只需要在成員函數(shù)參數(shù)列表后加上關(guān)鍵字const,在類體之外定義const成員函數(shù)時,還必須加上const關(guān)鍵字。
3、標(biāo)準(zhǔn)庫函數(shù)-sort
使用該算法必須包含頭文件-algorithm,sort函數(shù)默認(rèn)是按升序排列,例如sort(a,a+n),兩個參數(shù)分別為待排序數(shù)組的首地址和尾地址(尾地址不加入排序),排序的數(shù)據(jù)類型不局限于整數(shù),只要是定義了小于運(yùn)算的類型都可以,如果是沒有定義小于運(yùn)算的數(shù)據(jù)類型,或者想改變排序的順序,就要用到第三參數(shù)——比較函數(shù)。比較函數(shù)是一個自己定義的函數(shù),返回值是bool型,它規(guī)定了什么樣的關(guān)系才是“小于”。想把一個整數(shù)數(shù)組按降序排列,可以先定義一個比較函數(shù)cmp(降序):
bool cmp(int a,int b)
{
return a>b;
}
然后調(diào)用sort(a,a+n,cmp)
4、操作符重載
一般operator關(guān)鍵字加相應(yīng)的操作符組成,可以為成員函數(shù)或非成員函數(shù),非成員函數(shù)一般設(shè)為該類的友元。默認(rèn)情況下,取址操作符和逗號操作符在類對象執(zhí)行與在內(nèi)置類型一樣,取址返回對象的首地址,逗號從左到右計算每個表達(dá)式的值,并返回最右端的表達(dá)式的值。IO操作符必須為非成員函數(shù)。
