Hvorfor returnere const reference c++?

Innholdsfortegnelse:

Hvorfor returnere const reference c++?
Hvorfor returnere const reference c++?

Video: Hvorfor returnere const reference c++?

Video: Hvorfor returnere const reference c++?
Video: Complete React Query course in an hour | TanStack Query v4 for beginners 2024, November
Anonim

Du vil returnere en konstreferanse når du returnerer en egenskap til et objekt, som du ikke vil endres utenfor det. For eksempel: når objektet ditt har et navn, kan du lage følgende metode const std::string& get_name{ return name; };.

Når bør du bruke en const-referanseparameter?

Når du sender et argument med referanse, bruk alltid en const-referanse med mindre du trenger å endre verdien på argumentet. Ikke-konstreferanser kan ikke binde seg til r-verdier. En funksjon med en ikke-konstreferanseparameter kan ikke kalles med bokstaver eller midlertidige.

Når bør du returnere med referanse?

Bestå ved referanse betyr å sende en referanse til et objekt som allerede eksisterer. Hvis du vil returnere en referanse i en funksjon, betyr det at du må lage det objektet i funksjonen Du vet at en funksjon kan lage et nytt objekt på to måter: På stabelen eller haugen.

Hva gjør konstreferanse?

hvis du bruker const-referanse, du sender den ved referanse, og originaldataene blir ikke kopiert. i begge tilfeller kan ikke de opprinnelige dataene endres fra funksjonen.

Hva betyr det hvis en referanse returneres?

Det betyr du returnerer med referanse, som i det minste i dette tilfellet sannsynligvis ikke er ønsket. Det betyr i utgangspunktet at den returnerte verdien er et alias til det du returnerte fra funksjonen. Med mindre det er et vedvarende objekt, er det ulovlig.