루리코딩 세상

c++ : l-value, r-value : 좌측값과 우측값 본문

이론/C++ 키워드 정리

c++ : l-value, r-value : 좌측값과 우측값

루리딩 2025. 6. 4. 21:28

 모든 C++ 표현식 (Expression)의 경우 두가지 카테고리로 구분이 가능하다.

하나는 이 구문이 어떤 타입을 가지느냐, 다른 하나는 어떤 종류의 "값"을 가지느냐 이다.

 

예를 들어, int a = 3; 이라는 명령어가 있다는 가정을 하자.

 

표현식을 해석해보면 'a'가 RAM Memory의 존재하는 변수임을 알고있다.

즉 'a'의 주소값을 & 연산자를 통해 알아 낼 수 있다는 것이다.

우리는 보통 이렇게 주소값을 취할 수 있는 값을 좌측값(L-value)라고 부른다.

그리고 좌측값은 어떠한 표현식의 왼쪽 오른쪽 모두에 올 수 있다.(왼쪽에 있다해서, 좌측값이 아니다.)

 

오른쪽에 있는 '3' 주소값이 아닌, 표현식을 연산을 위한 잠깐 처리되고 사라지는 실체가 없는 가상의 값이다.

주소값을 취할 수 없는 값을 우측값(R-value)라고 부른다. 좌측값과는 다르게 우측값은 식의 오른쪽에만 항상

와야한다. 좌측값이 식의 왼쪽 오른쪽 모두 사용이 가능한 반면에, 우측값은 식의 오른쪽에만 존재한다.

 

 

'이론 > C++ 키워드 정리' 카테고리의 다른 글

OOP_추상화(Abstraction)  (0) 2025.06.07
추상 클래스, Template Method Pattern  (0) 2025.06.07
디자인 패턴  (0) 2025.06.02
assert.h  (0) 2025.06.01
C언어 정리하기  (8) 2025.05.29