模板類優(yōu)勢
時間:2023-03-28 04:34:01 | 來源:營銷百科
時間:2023-03-28 04:34:01 來源:營銷百科
模板類優(yōu)勢:創(chuàng)建一個 類型安全函數(shù)來返回兩個參數(shù)中較小的一個,如果不使用Templates,必須要編寫一系列如下的函數(shù):
// min for ints
int min( int a, int b )
return ( a b ) ? a : b;
// min for longs
long min( long a, long b )
return ( a b ) ? a : b;
// min for chars
char min( char a, char b )
return ( a b ) ? a : b;
//etc...
使用templates,可以減少重復部分,形成一個函數(shù):
template class type
type min( type a, type b )
return ( a b ) ? a : b;
模板能夠減少 源代碼量并提高代碼的機動性而不會降低 類型安全。
何時使用模板
模板經(jīng)常被用來實現(xiàn)如下功能:
創(chuàng)建一個 類型安全的集合類(例如, 堆棧)用來處理各種類型的數(shù)據(jù)
為函數(shù)添加額外的類型檢查以避免獲得空 指針
合并 操作符重載組來修改類型行為(例如 智能指針smart pointer)
大多數(shù)以上應(yīng)用可以不用模板實現(xiàn);但是,模板具有以下幾個優(yōu)勢:
開發(fā)容易。你可以只為你的類或函數(shù)創(chuàng)建一個普通的版本代替手工創(chuàng)建特殊情況處理。
理解容易。模板為抽象類型信息提供了一個直截了當?shù)姆椒ā?br>
類型安全。模板使用的類型在編譯時是明確的, 編譯器可以在發(fā)生錯誤之前進行類型檢查。