Kontrolflow og funktioner i C++
Computerspace · FGU · Programmering i C++
🔀 Hvad er kontrolflow og funktioner i C++?
Kontrolflow bestemmer hvilken kode der udføres hvornår. Funktioner er genbrugelige blokke af kode.
Betingelser – if/else og switch:
```cpp
int alder = 18;
if (alder >= 18) {
std::cout << "Myndig" << std::endl;
} else if (alder >= 15) {
std::cout << "Teenager" << std::endl;
} else {
std::cout << "Barn" << std::endl;
}
// Switch/case
switch (alder) {
case 18: std::cout << "Netop myndig"; break;
default: std::cout << "Anden alder"; break;
}
```
Løkker:
```cpp
// For-løkke
for (int i = 0; i < 5; i++) {
std::cout << i << " ";
}
// While-løkke
int x = 0;
while (x < 5) { x++; }
// Range-based for (C++11) – til collections
std::vector<int> tal = {1, 2, 3, 4, 5};
for (auto t : tal) {
std::cout << t << " ";
}
```
Funktioner:
```cpp
// Funktion med parametre og returværdi
int add(int a, int b) {
return a + b;
}
// Funktion overloading – samme navn, forskellige parametre
double add(double a, double b) {
return a + b;
}
// Lambda-udtryk (C++11)
auto multiply = [](int a, int b) { return a * b; };
```
---
🎓 Læringsmål for Kontrolflow og funktioner i C++
Læringsmål
- Bruge if/else og switch/case til betingede beslutninger
- Implementere for, while og do-while løkker
- Anvende range-based for loop til at iterere over collections
- Definere og kalde funktioner med parametre og returværdier
- Forstå og bruge funktions-overloading og lambda-udtryk
Sådan kan du arbejde med emnet
- Hvad er forskellen på for og while løkker?
- Hvad er en range-based for loop?
- Hvad er funktion overloading?
- Hvordan fungerer lambda-udtryk i C++?
⚠️ Typiske fejl at undgå
- Glemmer break i switch – uden
breakfalder koden igennem til næste case (fall-through) - Uendelig løkke – sørg for at løkkens betingelse til sidst bliver falsk
- Off-by-one fejl –
i < 5giver 0-4,i <= 5giver 0-5
---
💡 Tips til at komme i gang
- Skriv en beregner – lav funktioner til addition, subtraktion, multiplikation
- Brug range-based for til at gennemgå et array – det er mere læsbart
- Øv dig i lambda – de bruges meget i moderne C++ med STL-algoritmer
Øv dette emne med AI — quizzer, forklaringer og feedback tilpasset dit niveau.
Prøv Fagportalen gratis