Returner Brugerdefinerede Datatyper
Stryg for at vise menuen
Du kan returnere brugerdefinerede strukturer og klasser fra funktioner. Når du returnerer en instans af en struct eller klasse fra en funktion, returnerer du i princippet en kopi af objektet (på samme måde som ved returnering af simple datatyper).
Dette gør det muligt at indkapsle relaterede data og funktionalitet i en enkelt struktur- eller klasseinstans, videregive den mellem funktioner eller bruge den i forskellige dele af dit program.
For at returnere en struktur/klasse skal du bruge struktur-/klassenavnet som typespecifikator i funktionssignaturen.
main.cpp
1234567891011121314151617181920212223#include <iostream> // Define a custom structure called Person struct Person { std::string name; int age; }; // Function that returns a Person object Person create_person(const std::string name, const int age) { return Person { name, age }; } int main() { // Call the function to create a Person object Person person = create_person("Alice", 30); // Access and print the attributes of the returned Person object std::cout << "Name: " << person.name << std::endl; std::cout << "Age: " << person.age << std::endl; }
Denne kode definerer en brugerdefineret struktur Person med to felter: name og age. Funktionen create_person() opretter og returnerer et Person-objekt initialiseret med de angivne værdier. I main() kaldes funktionen for at oprette en Person-instans, og objektets detaljer udskrives til konsollen.
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