Fundamental of CS/: : C++

[Functional Programming] C++ Lambda Function

Jay.P Morgan 2024. 7. 31. 20:09



C++ 람다 함수(Lambda Function) 챕터 소개 

이번 챕터에서는 C++의 람다 함수(Lambda Function)와 함수형 프로그래밍 관련 개념을 학습한다.

 

 

1. C++과 함수형 프로그래밍

  • C++는 기본적으로 객체 지향 프로그래밍(OOP) 중심의 언어이다.
  • 하지만 C++11부터 람다 함수(Lambda Function)가 추가되면서 함수형 프로그래밍 스타일을 보다 편리하게 지원하기 시작했다.

 

 

2. 이번 챕터에서 다룰 내용

① 람다 함수 사용법

  • C++에서 람다 표현식을 작성하는 방법
  • 람다 함수를 활용하는 다양한 패턴 학습

② 람다 표현식의 컴파일 과정

  • 작성한 람다 코드가 컴파일러 내부에서 어떻게 변환되는지 이해
  • 람다 함수가 실제로 어떤 형태의 코드로 동작하는지 학습

③ 함수 객체(Function Object)

  • 람다 함수와 함수 객체의 관계 이해
  • 함수 객체가 STL과 어떻게 결합되는지 학습

④ Higher-Order Function(고차 함수)

  • 함수를 인자로 전달하는 방식 이해
  • 함수 객체가 다른 함수에 전달되어 활용되는 방법 학습

 

 

 

핵심 정리

  • C++는 OOP 중심 언어이지만 C++11부터 람다 함수를 통해 함수형 프로그래밍을 더욱 편리하게 지원한다.
  • 람다 함수는 STL 알고리즘, 함수 객체, 고차 함수와 함께 활용되며 현대적인 C++ 프로그래밍에서 중요한 역할을 한다.
  • 이번 챕터에서는 람다의 사용법뿐 아니라 내부 동작 방식과 활용 방법까지 학습한다.