Een functie in de C /C + + taal is een proces om een aantal doel te bereiken . De kern syntax en het mechanisme van een C + + -programma erft basisregels van de oorspronkelijke taal C en bouwt voort op het. Definieer de functie in een C + + object of als een algemene functie , bel dan de functie met waarden voor elke gedefinieerde parameter . Argumenten voor functies Definieer een lijst van variabelen als parameters aan de functie . Deze worden " argumenten " genoemd. Ook kunt u een functie definiëren zonder parameters helemaal : ObjectO :: FunctionF ( int arg1 , char * arg2 , dubbele arg3 ) { //Functie Body // . uitkomst varieert met argumentwaarden } Missing argumenten C + + kunt u een functie aan te roepen zonder zijn gedefinieerd argumenten . Dit veroorzaakt geen compileren , koppeling - time of run-time error . In dit geval gebruikt de functie standaard waarden voor de argumenten bij run -time . Bieden standaardwaarden voor argumenten recht toen en daar : leegte MyFunction ( dubbele d_arg = 0.0 ) { if ( d_arg == 0.0 ) ... anders ... } < br > functie Overbelasting Dit is een heel bijzonder kenmerk van C + + . U kunt " overload" een bestaande functie definitie door een andere. De naam van de functie blijft hetzelfde , maar de lijst met argumenten is anders . Gebruik deze functie om overbelasting standaard library functies ook, maar alleen als het nodig : bijv. int MyFunction ( int a ) ; int MyFunction ( int a , dubbele b ) ; int MyFunction ( ) ; Hier , de syntaxis van de functie gesprek vertelt de compiler die MyFunction te halen . Als u geen argumenten door te geven , wordt de derde opgepikt . Als de functie oproep ziet er zo uit : " r_val = MyFunction ( 12 ) , " dan is de compiler maakt gebruik van de tweede definitie verstrekken standaardwaarden voor argumenten , zoals weergegeven in hoofdstuk 2 , is een snelkoppeling methode . functie overbelasting , maar het werkt alleen in eenvoudige gevallen overbelasting Object Constructors De echte kracht van de functie overbelasting in C + + wordt in constructor overbelasting . . Definieer de bouwer van een object in twee of meer manieren . Met andere woorden , kan de beller het object op verschillende manieren om verschillende redenen - zoals compatibiliteit , draagbaarheid en flexibiliteit. Constructor voor objecten MijnObj wordt genoemd " MijnObj ( ) . " Bijvoorbeeld : class datum { int dag , maand , jaar ; openbare : void datum ( char * c_date ) ; nietig datum ( int mm , int dd , int jj ) ; nietig datum ( ) ; ... } In de oudere versie van deze software , de " date " object is gemaakt met behulp van een string ingevoerd door de gebruiker . In de volgende release , werden de maand , dag en jaar apart doorgegeven aan de starre indeling controle te vermijden . Met ingang van de datum van publicatie , hoeft programmeurs geen beroep doen op de gebruiker helemaal niet, maar gaan halen of berekent de datum in met de systeemklok , in het proces van het creëren van de " Date " object . Maak het object in het programma : Methode A : date ( " 10/10/2011 " ) ; Methode B : datum ( 10 , 10 , 2011 ) ; Methode C : date ( ) ; als u bekend bent met de oudere versie van deze software zijn , en kom over een gebruikersprogramma die datum noemt zonder argumenten , kunt u perplex over hoe de compiler mag dat . De verklaring is functie overbelasting .
|