{Quiz}. 다음 중 l-value는 몇 개일까요? (line 12 ~ line 29 중에서.. )
1 int* pa = &a;
2 const int* pb = &a;
3
4 int fa() { return 1; }
5 const int fb() { return 2; }
6
7 int& fra() { return a; }
8 const int& frb() { return b; }
9
10 void main_rvalue()
11 {
12 RVALUE_CHECKER(1);
13 RVALUE_CHECKER(int(1));
14 RVALUE_CHECKER(new int(1));
15 RVALUE_CHECKER(*(new int(1)));
16
17 RVALUE_CHECKER(++a);
18 RVALUE_CHECKER(a++);
19 RVALUE_CHECKER(a + 1);
20
21 RVALUE_CHECKER(++*pa);
22 RVALUE_CHECKER(*pa++);
23 RVALUE_CHECKER(*pa + 1);
24
25 RVALUE_CHECKER(fa());
26 RVALUE_CHECKER(fb());
27
28 RVALUE_CHECKER(fra());
29 RVALUE_CHECKER(frb());
30 }
참고로...
#1. l-value, r-value 구분은 expression에 대한 구분임 (type 이라던지 하는 건 관계가 없음.)
#2. ++a (line 17) 은 l-value 이지만, a++ (line 18)은 rvalue임.
'정보 공유터' 카테고리의 다른 글
| YooKey, "다음문장"을 "줄바꿈"으로 바꾸기. (76) | 2011/01/21 |
|---|---|
| iPhone, 무한 사과 발생시... 초기화 하지 않고 복구하는 방법 (11) | 2011/01/21 |
| [C++0x] r-vaule reference: 파라미터의 const 속성 없애기!? (1) | 2010/07/30 |
| [C++] r-value vs. l-value (1) | 2010/07/25 |
| [Apache] 찾을 수 없습니다. (3) | 2010/07/22 |
| [C++] r-value Reference: Performance (2) | 2010/07/13 |
| [C++] 임의의 이름의 변수 만들기 (0) | 2010/05/27 |
