728x90
람다식을 쓰는 이유 :
람다식은 함수의 인라인화 가능하다.
메모리 관리에 용이하다. 람다식은 실행 하고 난 뒤 메모리에서 바로 삭제된다.
C++람다식의 형태
[]() ->void { cout << t + " world" << endl; };
[] : caputre 절
() : 매개변수 목록 선택적.
-> : 반환 타입
{} : 람다 body부분
CAPTURE절
CAPTURE절은 람다 body부분 바깥쪽 범위에서 변수를 access할 수 있게 한다.
[&total, factor] : &total은 total변수가 reference로 capture된다.
[&, factor] : &는 모든 변수가 reference로 capture된다.
[=, &total] : =은 모든 변수가 value로 capture된다.
728x90
댓글