TIL

26.01.29일자 - TIL

csh8696nb 2026. 1. 29. 20:55

ACK, 분반 수업

 

효율상 새로운 벡터를 만들 필요 없이 합산된 값에서(첫 push_back대신) 바로 판정을 하고 answer++하면 가독성과 기능이 좀 더 좋아진다.
==========
RAII

Move Semantics
uniquePtr - 소유권은 1명만 가짐
메세지 패턴 - 쓴 사람이 메세지를 보내면 받은 사람이 소유권을 이전 받고 발송자는 소유권을 잃어버리는 방식.

원래 자리는 의미 없는 자리 (유사 null) 가 되므로 사용하게 되면 크래시 가 생기게 된다.

uniquePtr 은 MoveTemp를 사용해야 한다.
& - 참조 // && - rvalue
Rvalue ( Right value)
주소를 가질 수 없거나 일시적인 값 / 표현식이 끝나면 즉시 소멸함 / 대입 연산자의 오른쪽에만 올 수 있음.

Lvalue = Rvalue 가 기본
만약 Rvalue만 있으면 아무 동작을 안 한 것과 같다. (허공에 저글링 한 것과 비슷함)
Rvalue = Rvalue 라면 바로 위와 같다.(사실상 동작 안 한 것 과 같음)

l-value의 특성은 메모리 공간을 지속적(스코프 동안)으로 점유
r-value는 해당 라인에서 즉시 사용되고 사라짐.

r-value optimization(RVO)
&& = movetemp()
L-value 를  R-value로 써서 복사 대신 원본의 소유권을 쓰겠다

 

& : 이름이 있고 계속 살아있는 놈을 참조

&& : 곧 사라져도 되는 놈을 받아도 되는 참조

 

Move는 참조처럼 싸지만 결과는 복사처럼 독립적이다.

“move는 포인터보다 무거운 자원을 참조처럼 싸게, 하지만 소유권은 안전하게 넘기는 방법이다”


==========
2-2,3 강 까지 구현

'TIL' 카테고리의 다른 글

26.02.02일자 - TIL  (0) 2026.02.02
26.01.30일자 - TIL  (0) 2026.01.30
26.01.28일자 - TIL  (1) 2026.01.28
26.01.27일자 - TIL  (0) 2026.01.27
26.01.26일자 - TIL  (1) 2026.01.26