How to use C++ lambda function - cpp 람다 사용 방법

김관중·2024년 11월 20일

C++

목록 보기
13/15

코드포스를 하던 중 에디토리얼에 람다를 활용하는 예제가 있어

람다를 배웠고 이를 기록하고자 글을 쓴다.

람다 함수의 기본 원형은

[capture](define  parameter)  return  value  {codes}(passed  parameter)[capture](define\;parameter)\rightarrow\;return\;value\;\{codes\}(passed\;parameter)

로 구성된다.

캡처 부분에서는 람다 밖에 있는 변수를 참조하는 부분인데,

call by reference, call by value 둘다 사용 가능하다.

&\&은 call by reference로 쓰이고

==는 call by value로 쓰인다.

각자 단독으로 쓰였을 때에는 모든 변수를 가져오는 것을 의미하고,

[&,  variable][\&,\;variable] 처럼 variablevariable을 제외한 모든 변수를 참조할 수 있다.

(일부 원하는 변수들 참조, 복사를 할 수 있다.)

또한 C++의 변수 auto 방식으로 람다를 선언할 수 있다.

int a,b;
auto addAB=[&]() -> int { return a+b; };
printf("%d",addAB())
profile
꾸준히 학습하기

0개의 댓글