태그: 람다
5편
-
C++ 람다 표현식 심화 | 클로저 타입·캡처·제네릭 연역·IIFE·실무 패턴
람다 표현식(lambda expression)은 호출 지점에서 작은 호출 가능 객체를 만들기 위한 문법입니다. 다만 “익명 함수”라고만 이해하면 캡처 수명, 타입 소거(std::function) 비용.
-
Kotlin 함수 | 함수 정의, 람다, 고차 함수
Kotlin 함수의 기본 매개변수와 가변 인자, 람다식 문법, 함수를 받고 돌려주는 고차 함수, 확장 함수, let·apply·also·run·with 스코프 함수, inline 함수를 DSL 스타일 예제까지 이어서 설명합니다.
-
C++ 람다 캡처로 생기는 dangling reference: 값 캡처·shared_ptr·[*this]로 수명 지키기
참조로 캡처한 지역 변수가 스코프를 벗어난 뒤 람다가 실행되면 dangling reference 크래시가 납니다. 값 캡처와 shared_ptr, [*this]로 수명을 지키는 방법과 비동기 콜백이나 람다 반환에서 자주 하는 캡처 실수를 예제로 다룹니다.
-
C++ std::function vs 함수 포인터: 성능과 유연성의 트레이드오프
콜백을 저장할 때 함수 포인터와 std::function 중 무엇을 고를지 비교합니다. 직접 측정한 호출 비용 차이는 1ns 미만이었고, 실제 비용은 인라인 불가와 생성·복사 시 힙 할당에서 생긴다는 점을 이벤트 시스템·스레드 풀 예제로 설명합니다.
-
C++23에서 실제로 쓸 기능: std::expected, mdspan, deducing this, auto(x)
C++23 주요 기능 정리. 예외 없이 에러를 다루는 std::expected, 다차원 배열 뷰 mdspan, CRTP를 대체하는 deducing this, auto(x) decay-copy, assume 속성과 C++20/17에서의 마이그레이션을 다룹니다.