Du kan överbelasta mallade funktioner som du kan normala funktioner . På så sätt kan en funktion namn hanterar generiska datatyper och ett varierande antal parametrar , under förutsättning att de är av samma datatyp . Programmeraren har mindre att tänka på eftersom kompilatorn hanterar typkontroll och matchar ett funktionsanrop till en funktion signatur . Funktion mall överbelastning bidrar till att öka uttaget av funktionsanvändning . Saker du behöver Review, Advanced C + + kunskaper
C + + kompilator med IDE , såsom Visual Studio 2008
Visa fler instruktioner
1
Review hur man använder funktionen mallar i C + + om din foundation på mallar är skakig . Du måste veta mallar innan du kan försöka denna tutorial .
2
Använd sökordet " klass " eller " TypeName " i mallen för att specificera de generiska typer . De två sökord har olika användning . Men inom ramen för denna tutorial , spelar det ingen roll vilket sökord du använder .
3
Overload en mallade funktion så många gånger som det finns inmatade argument du vill att det ska bearbeta . Du måste göra detta i deklarationen samt definitionen . Exemplet nedan visar de tre deklarationer av en funktion , som kan skriva ut 02:59 datatyper av samma typ till standard output :
mall
void Print ( const T t1 ) ;
mall
void Print ( const T T1 , const T t2 ) ;
mall
void Print ( const T T1 , const T t2 , const T T3 ) ,
4
genomföra de överbelastande algoritmer enligt följande :
mall
void Print ( const T T1 ) {
cout }
mall
void Print ( const T T1 , const T t2 ) {
cout }
mall
void Print ( const T T1 , const T t2 , const T T3 ) {
cout }
5
Call Print ( ) från main ( ) genom att överbelasta det med en till tre parametrar och använda någon fundamental datatyp . Observera att du kan anropa funktionen med eller utan fästvinklar eller typspecifikation :
int main ( ) {
Print ( 4.F ) , //skriver en float
Skriv < > ( 23 , 37 ) , //tryck två heltal
Print ( "c" , "o" , "m" ) , //utskrifter tre tecken
}