코드포스를 하던 중 에디토리얼에 람다를 활용하는 예제가 있어
람다를 배웠고 이를 기록하고자 글을 쓴다.
람다 함수의 기본 원형은
로 구성된다.
캡처 부분에서는 람다 밖에 있는 변수를 참조하는 부분인데,
call by reference, call by value 둘다 사용 가능하다.
은 call by reference로 쓰이고
는 call by value로 쓰인다.
각자 단독으로 쓰였을 때에는 모든 변수를 가져오는 것을 의미하고,
처럼 을 제외한 모든 변수를 참조할 수 있다.
(일부 원하는 변수들 참조, 복사를 할 수 있다.)
또한 C++의 변수 auto 방식으로 람다를 선언할 수 있다.
int a,b;
auto addAB=[&]() -> int { return a+b; };
printf("%d",addAB())