C++- functies


Een functie is een codeblok dat alleen wordt uitgevoerd als het wordt aangeroepen.

U kunt gegevens, ook wel parameters genoemd, doorgeven aan een functie.

Functies worden gebruikt om bepaalde acties uit te voeren, en ze zijn belangrijk voor het hergebruik van code: definieer de code één keer en gebruik hem vele malen.


Een functie maken

C++ biedt een aantal vooraf gedefinieerde functies, zoals main(), die wordt gebruikt om code uit te voeren. Maar u kunt ook uw eigen functies maken om bepaalde acties uit te voeren.

Als u een functie wilt maken (vaak declareren genoemd ), geeft u de naam van de functie op, gevolgd door haakjes () :

Syntaxis

void myFunction() {
  // code to be executed
}

Voorbeeld uitgelegd

  • myFunction()is de naam van de functie
  • voidbetekent dat de functie geen retourwaarde heeft. Later in het volgende hoofdstuk leert u meer over retourwaarden
  • binnen de functie (de body), voeg code toe die definieert wat de functie zou moeten doen

Een functie aanroepen

Gedeclareerde functies worden niet onmiddellijk uitgevoerd. Ze worden "opgeslagen voor later gebruik" en worden later uitgevoerd wanneer ze worden aangeroepen.

Om een ​​functie aan te roepen, schrijft u de naam van de functie gevolgd door twee haakjes () en een puntkomma;

In het volgende voorbeeld myFunction()wordt gebruikt om een ​​tekst af te drukken (de actie), wanneer deze wordt aangeroepen:

Voorbeeld

Binnen main, bel myFunction():

// Create a function
void myFunction() {
  cout << "I just got executed!";
}

int main() {
  myFunction(); // call the function
  return 0;
}

// Outputs "I just got executed!"

Een functie kan meerdere keren worden aangeroepen:

Voorbeeld

void myFunction() {
  cout << "I just got executed!\n";
}

int main() {
  myFunction();
  myFunction();
  myFunction();
  return 0;
}

// I just got executed!
// I just got executed!
// I just got executed!


Functieverklaring en definitie

Een C++-functie bestaat uit twee delen:

  • Declaratie: het retourtype, de naam van de functie en parameters (indien aanwezig)
  • Definitie: de hoofdtekst van de functie (uit te voeren code)
void myFunction() { // declaration
  // the body of the function (definition)
}

Opmerking: Als een door de gebruiker gedefinieerde functie, zoals myFunction()wordt gedeclareerd na de main()functie, zal er een fout optreden :

Voorbeeld

int main() {
  myFunction();
  return 0;
}

void myFunction() {
  cout << "I just got executed!";
}

// Error

Het is echter mogelijk om de declaratie en de definitie van de functie te scheiden - voor code-optimalisatie.

U zult vaak C++-programma's zien met een functiedeclaratie hierboven main()en een functiedefinitie hieronder main(). Dit maakt de code beter georganiseerd en gemakkelijker te lezen:

Voorbeeld

// Function declaration
void myFunction();

// The main method
int main() {
  myFunction();  // call the function
  return 0;
}

// Function definition
void myFunction() {
  cout << "I just got executed!";
}

C++-oefeningen

Test jezelf met oefeningen

Oefening:

Maak een functie met de naam myFunctionen noem deze inside main().

void () {
  cout << "I just got executed!";
}

int main() {  
  ;
  return 0;
}