C++:
Code organiseren in functies
Hoe te:
Laten we een veelvoorkomende taak nemen: het berekenen van de oppervlakte van een cirkel. In plaats van elke keer dezelfde formule te schrijven, encapsuleren we deze in een functie.
#include <iostream>
#define PI 3.14159
double berekenCirkelOppervlakte(double radius) {
return PI * radius * radius;
}
int main() {
double r = 5.0;
std::cout << "Oppervlakte van de cirkel met radius " << r << " is " << berekenCirkelOppervlakte(r) << std::endl;
return 0;
}
Voorbeelduitvoer:
Oppervlakte van de cirkel met radius 5 is 78.5397
Diepere Duik
Historisch gezien waren procedures en functies de ruggengraat van gestructureerd programmeren, gepromoot in de jaren 60 om de problemen van “spaghetticode” in eerdere imperatieve programmeertalen aan te pakken. Alternatieven zoals OOP (Objectgeoriënteerd Programmeren) gaan verder door deze functies te associëren met gegevensstructuren. In C++ beschik je over reguliere functies, klassemethoden (inclusief statische methoden), lambdas en templatefuncties, elk met verschillende voordelen. Het implementeren van goed georganiseerde functies omvat meestal het naleven van principes zoals DRY (“Don’t Repeat Yourself”) en SRP (Single Responsibility Principle), wat betekent dat elke functie slechts één ding doet en dat goed doet.
Zie Ook
Voor meer over functies in C++:
- https://en.cppreference.com/w/cpp/language/functions
- https://www.learncpp.com/cpp-tutorial/77-introduction-to-functions/
Voor ontwerpprincipes met betrekking tot functies:
- https://en.wikipedia.org/wiki/Single-responsibility_principle
- https://en.wikipedia.org/wiki/Don%27t_repeat_yourself
Leer over lambdas en geavanceerd functiegebruik: