Varför returnera const referens c++?

Innehållsförteckning:

Varför returnera const referens c++?
Varför returnera const referens c++?

Video: Varför returnera const referens c++?

Video: Varför returnera const referens c++?
Video: Полный курс по Next js - Изучи Nextjs за 2 часа! | React SSR +таймкоды 2024, November
Anonim

Du vill returnera en konstreferens när du returnerar en egenskap för ett objekt, att du inte vill ändras utanför det. Till exempel: när ditt objekt har ett namn, kan du göra följande metod const std::string& get_name{ return name; };.

När ska du använda en const-referensparameter?

När du skickar ett argument med referens, använd alltid en konstreferens om du inte behöver ändra värdet på argumentet. Icke-konstreferenser kan inte binda till r-värden. En funktion med en icke-konst referensparameter kan inte anropas med bokstaver eller temporära.

När ska du återvända med referens?

Att passera med referens innebär att skicka en referens till ett objekt som redan finns. Alltså, om du vill returnera en referens i en funktion, betyder det att du måste skapa det objektet i funktionen Du vet att en funktion kan skapa ett nytt objekt på två sätt: På högen eller högen.

Vad gör konstreferens?

om du använder const-referens, du skickar det genom referens och originaldata kopieras inte. i båda fallen kan originaldata inte ändras inifrån funktionen.

Vad betyder det om en referens returneras?

Det betyder du återvänder genom referens, vilket åtminstone i det här fallet förmodligen inte är önskvärt. Det betyder i princip att det returnerade värdet är ett alias till det du returnerade från funktionen. Såvida det inte är ett beständigt föremål är det olagligt.