RValue Reference 썸네일형 리스트형 C++11 이동생성자 (Move Constructor) Rvalue Reference가 추가되면서 같이 추가된 이동생성자에 대한 설명이다. 이동생성자를 사용하는 궁극적인 목적은 바로 성능향상인데, 아래의 예제를 통해 설명함. #include #include #include using namespace std; struct Person{string name;int year; Person(string p_name, int p_year): name(move(p_name)), year(p_year){cout 더보기 C++11 RValue Reference - 우측값 참조 => 1+2; 이와 같이 3이라는 숫자가 생성되자 마자 사라지는 값을 c++에서는 우측값이라고 한다. => int sum = 1+2; 반면 sum과 같이 기억되는 변수를 왼쪽값이라고 한다. c++를 처음 배울때 값에 의한 전달, 참조에 의한 전달이라는 것을 배우는데, 여기서 참조전달은 정확히 이야기하면 왼쪽값 레퍼런스 전달을 의미한다. 예를 들어, void SetName(string& name) { m_name = name; } SetName의 파라미터는 name이라는 왼쪽값 참조를 전달하고 있다. C++11 에서는 오른쪽값 레퍼런스도 가능하게 하였는데, 표시는 기존의 &와 비슷한 &&를 사용한다. int nCount; // nCount는 왼쪽값 int& lrefValue1 = nCount; // 왼쪽값.. 더보기 이전 1 다음