Returnering af værdier med simple datatyper
Stryg for at vise menuen
Funktioner kan returnere værdier af simple datatyper såsom heltal, flydende kommatal og tegn. For at angive returtypen for en funktion, angives datatypen før funktionsnavnet i funktionssignaturen.
Når funktionen udføres, kan den beregne en værdi, som derefter returneres ved hjælp af return-sætningen. Denne type returværdi blev brugt i kodeeksemplerne tidligere:
main.cpp
12345678910111213141516171819#include <iostream> // Function that adds two integers and returns the result int add(const int a, const int b) { int sum = a + b; return sum; } int main() { int a = 3; int b = 5; // Call the function and store the returned result in a variable int result = add(a, b); std::cout << result << std::endl; }
Funktionen add() er erklæret til at returnere en heltalsværdi ved at bruge int-specifikatoren før funktionsnavnet. Den beregner summen af a og b og returnerer resultatet som en int.
Sørg for, at variablen, hvor du har tænkt dig at gemme den returnerede værdi inde i main()-blokken, matcher datatypen for den tilsvarende returværdi.
Bemærk venligst, at funktionens returværdi kun kan angives inden for funktionssignaturen. Selv hvis du forsøger at returnere en værdi af en anden type ved hjælp af return-sætningen, vil den automatisk blive konverteret til den datatype, der er angivet i funktionssignaturen:
main.cpp
1234567891011121314151617181920#include <iostream> // Function that adds two integers and returns the result int add(const double a, const double b) { double sum = a + b; return sum; } int main() { double a = 3.5; double b = 5.1; // Call the function and store the returned result in a variable int result = add(a, b); // Print the result std::cout << result << std::endl; }
Summen inde i funktionen er af typen double, men funktionens returtype er int.
Som resultat bliver den returnerede værdi konverteret til et heltal, hvilket giver 8 i stedet for 8.6.
Bemærk, at vi kun kan returnere én værdi fra en funktion ved brug af en simpel datatypemarkør. For at returnere flere værdier skal vi bruge arrays eller brugerdefinerede strukturer (klasser).
Tak for dine kommentarer!
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat