C++ standard libraries extensions, version 3
From cppreference.net
<
cpp
|
experimental
C++ 라이브러리 기본 확장 버전 3, ISO/IEC TS 19568:2024은 버전 1 과 버전 2 에서 정의된 구성요소들에 추가적으로 다음과 같은 새로운 C++ 표준 라이브러리 구성요소들을 정의합니다.
C++17/20에 통합된 컴포넌트와 다음 컴포넌트들은 LFTS v3에서 제거되었습니다:
- std::experimental::make_array ,
- std::experimental::erased_type ,
- std::experimental::packaged_task , 및
- std::experimental::promise .
스코프 가드
|
헤더에 정의됨
<experimental/scope>
|
|
|
함수 객체를 래핑하고 스코프를 벗어날 때 호출함
(클래스 템플릿) |
|
|
함수 객체를 래핑하고 예외를 통해 스코프를 벗어날 때 호출함
(클래스 템플릿) |
|
|
함수 객체를 래핑하고 정상적으로 스코프를 벗어날 때 호출함
(클래스 템플릿) |
|
|
범용 RAII 리소스 핸들 래퍼
(클래스 템플릿) |
|
기능 테스트 매크로
|
__cpp_lib_experimental_memory_resources
|
최소
201803
값을 가지며
resource_adaptor
지원을 나타냄
(매크로 상수) |
|
정의된 헤더
<experimental/functional>
|
|
|
__cpp_lib_experimental_function_polymorphic_allocator
|
최소
202211
값을 가지며
std::
pmr
::
polymorphic_allocator
<>
가
std::experimental::function
에 사용됨을 나타냄
(매크로 상수) |
|
정의된 헤더
<experimental/scope>
|
|
|
__cpp_lib_experimental_scope
|
최소
201902
값을 가지며 스코프 가드 지원을 나타냄
(매크로 상수) |
참고 사항
__cpp_lib_experimental_memory_resources
의 값이 LFTS v3에서 증가되었습니다. 이는
resource_adaptor
설계가
std::pmr::memory_resource
기반으로 재구성되었기 때문입니다.