Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

C++에서 Lvalue와 Rvalue는 무엇입니까?


lvalue(로케이터 값)는 메모리에서 식별 가능한 위치를 차지하는 개체를 나타냅니다(즉, 주소가 있음).

rvalue는 제외로 정의됩니다. 모든 표현식은 lvalue 또는 rvalue이므로 rvalue는 메모리에서 식별 가능한 위치를 차지하는 개체를 나타내지 않는 표현식입니다.

의 경우 , 할당은 왼쪽 피연산자로 lvalue를 기대하므로 다음이 유효합니다 -

int i = 10;
But this is not:
int i;
10 = i;

그 이유는 내가 메모리에 주소가 있고 lvalue입니다. . 10은 식별 가능한 메모리 위치가 없으므로 rvalue입니다. . 따라서 i 값을 할당하면 10은 의미가 없습니다.