Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Returnere egendefinerte datatyper | Spesifikasjon av returverdier for funksjoner
C++-Funksjoner

Returnere egendefinerte datatyper

Sveip for å vise menyen

Du kan returnere egendefinerte strukturer og klasser fra funksjoner. Når du returnerer en instans av en struktur eller klasse fra en funksjon, returnerer du i praksis en kopi av objektet (på samme måte som når du returnerer enkle datatyper).

Dette gjør det mulig å kapsle inn relaterte data og oppførsel i én enkelt struktur- eller klasseinstans, sende den mellom funksjoner eller bruke den i ulike deler av programmet ditt.

For å returnere en struktur/klasse må du bruke struktur-/klassenavnet som typespesifikator i funksjonssignaturen.

main.cpp

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 koden definerer en egendefinert struktur Person med to felt: name og age. Funksjonen create_person() oppretter og returnerer et Person-objekt initialisert med de gitte verdiene. I main() kalles funksjonen for å opprette en Person-instans, og objektets detaljer skrives ut til konsollen.

question mark

Hvilken funksjonssignatur returnerer korrekt et objekt av Person-strukturen?

Velg det helt riktige svaret

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 3. Kapittel 3

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

Seksjon 3. Kapittel 3
some-alt