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.