Logo sl.boatexistence.com

Kaj sta rvalue in lvalue v C++?

Kazalo:

Kaj sta rvalue in lvalue v C++?
Kaj sta rvalue in lvalue v C++?

Video: Kaj sta rvalue in lvalue v C++?

Video: Kaj sta rvalue in lvalue v C++?
Video: What is the Difference Between a Pointer and a Reference C++ 2024, April
Anonim

TL;DR: »lvalue« bodisi pomeni »izraz, ki ga je mogoče postaviti na levo stran operatorja dodelitve« ali pomeni »izraz, ki ima pomnilniški naslov«. » rvalue« je opredeljen kot »vsi drugi izrazi«.

Kaj sta lvalue in rvalue v C s primerom?

Na primer, dodelitev pričakuje lvalue kot svoj levi operand, zato velja naslednje: int i=10; Ampak to ni: int i; 10=i; To je zato, ker imam naslov v pomnilniku in je lvalue. Medtem ko 10 nima prepoznavne pomnilniške lokacije in je zato rvalue.

Kakšna je razlika med rvalue in lvalue?

Vrednost l se nanaša na predmet, ki ne obstaja več kot en sam izraz. rvalue je začasna vrednost, ki ne obstaja več kot izraz, ki jo uporablja.

Kaj je rvalue v jeziku C?

L-vrednost: "l-vrednost" se nanaša na pomnilniško lokacijo, ki identificira predmet. l-vrednost se lahko pojavi kot leva ali desna stran operatorja dodelitve (=). l-vrednost pogosto predstavlja identifikator.

Kaj so reference rvalue?

Rvalue reference so majhna tehnična razširitev jezika C++ Reference Rvalue omogočajo programerjem, da se izognejo logično nepotrebnemu kopiranju in zagotovijo popolne funkcije posredovanja. Namenjeni so predvsem pomoči pri oblikovanju večje zmogljivosti in robustnejših knjižnic.