=================如何對(duì)模板進(jìn)行重載==================== 我們?cè)谶\(yùn)用一個(gè)函數(shù)模板的時(shí)候,很可能會(huì)增加這個(gè)函數(shù)的功能。比如說(shuō)原先我們有一個(gè)交換函數(shù):
它的功能就是對(duì)兩個(gè)數(shù)進(jìn)行交換。但是現(xiàn)在如果我們想對(duì)兩個(gè)數(shù)組中的每一個(gè)數(shù)進(jìn)行交換,那么就需要重載這個(gè)Swap函數(shù),并且給它添加一個(gè)新的變量:int n。這個(gè)函數(shù)的作用就是循環(huán)數(shù)組中的每個(gè)元素,那么這個(gè)重載的Swap()函數(shù)就應(yīng)該用如下方式進(jìn)行聲明:
這樣一來(lái),women就對(duì)原有的Swap()函數(shù)進(jìn)行了重載,即功能上的升級(jí)。下面是這個(gè)程序的例子:
注意,在這個(gè)程序的第5行和18行我們都定義了一個(gè)模板類型ElementType。它用在緊接其后的模板函數(shù)的定義。這個(gè)程序主要完成額功能就是對(duì)兩個(gè)數(shù)進(jìn)行交換,同時(shí)對(duì)兩個(gè)數(shù)組進(jìn)行交換。下面就是這個(gè)程序的運(yùn)行結(jié)果: 通過(guò)這個(gè)程序的運(yùn)行結(jié)果,我們可以清楚的看到,利用模板重載這個(gè)概念,我們可以升級(jí)原有的函數(shù),使之達(dá)到功能升級(jí)的地步~~ |
|