En funktion i C /C + + sprog er en proces at opnå en vis mål. Kernen syntaks og mekanisme af et C + + program arver grundlæggende regler i det oprindelige C-sprog og bygger på den. Definere funktionen i en C + + objekt eller som en global funktion , kalder funktionen med værdier for hver defineret parameter. Argumenter til funktioner
Definer en liste over variable som parametre til funktionen. Disse kaldes " argumenter ". Du kan også definere en funktion uden parametre overhovedet : Hej
ObjectO :: FunctionF ( int arg1 , char * arg2 , dobbelt arg3 ) {//Funktion Krop //. resultatet varierer med argumentværdier }
Missing argumenter
C + + tillader dig at kalde en funktion uden sine definerede argumenter. Dette medfører ikke en compile- tid , link -eller run -time fejl. I dette tilfælde bruger funktionen standardværdier for argumenterne på run-time . Giv standardværdier for argumenter ret derefter og der : Hej
void MinFunktion (dobbelt d_arg = 0,0 ) { if ( d_arg == 0.0 ) ... ellers ... }
< br > Funktion Overbelastning
p Dette er en meget speciel funktion i C + +. Du kan " overload " af en eksisterende funktion definition med en anden. Funktionen navn forbliver den samme , men argumentet liste er anderledes . Brug denne funktion til at overbelaste standard bibliotek funktioner så godt , men kun når det er nødvendigt : Hej
f.eks int MinFunktion ( int a ) int MinFunktion ( int a , dobbelt b) int MinFunktion ();
Her syntaksen i funktionen opkald fortæller compileren , som MinFunktion at samle op. Hvis du ikke kan passere nogen argumenter , der er den tredje afhentet. Hvis funktionskaldet ser sådan ud: " r_val = MinFunktion (12), " så compileren benytter den anden definition
Forudsat standardværdier for argumenter , som vist i afsnit 2, er en genvej metode . funktionen overbelastning , men det virker kun i simple tilfælde
overbelastning Object Constructors
reelle magt af funktion overbelastning i C + + er i konstruktør overbelastning. . Definer konstruktøren af et objekt i to eller flere måder. Med andre ord , så opkalderen kan oprette objektet på forskellige måder af forskellige årsager - ligesom bagudkompatibilitet , bærbarhed eller fleksibilitet . Constructor for objekt mitObjekt hedder " mitObjekt (). " For eksempel : Hej
class dato { int dag, måned, år
public: void dato ( char * c_date ) void dato ( int mm , int dd, int yy ) void dato ();
...
}
i den ældre version af denne software , de " date " objekt blev oprettet ved hjælp af en snor indtastet af brugeren. I den næste udgivelse, blev måned, dag og år gået separat for at undgå den stive format kontrol . Fra datoen for offentliggørelse , behøver programmører ikke stole på brugeren på alle, men gå og hente eller beregne datoen ved hjælp af systemets ur , i processen med at skabe "Dato" objekt. Oprette objektet i programmet : Hej
Metode A: dato ( "10/10/2011 ") Metode B: dato ( 10, 10 , 2011) , Metode C: date ();
Hvis du er fortrolig med den ældre version af denne software , og komme på tværs af en bruger program , der kalder dato uden argumenter , kan du være forvirret , hvordan compiler tilladt det. Forklaringen er funktionen overbelastning.