C++ standard libraries extensions
From cppreference.net
<
cpp
|
experimental
C++ 라이브러리 기본 확장 버전 1, ISO/IEC TS 19568:2015은 C++ 표준 라이브러리를 위한 다음과 같은 새로운 구성 요소들을 정의합니다:
목차 |
C++17에 포함되지 않음
ISO/IEC TS 19568:2015의 다음 구성 요소들은 C++17에 포함되도록 선택되지 않았습니다.
타입 소거 할당자를 지원하기 위한 기존 클래스들의 수정된 버전
|
헤더에 정의됨
<experimental/functional>
|
|
|
타입 소거된 할당자를 지원하는 수정된 버전의
std::function
(클래스 템플릿) |
|
|
헤더에 정의됨
<experimental/future>
|
|
|
타입 소거된 할당자를 지원하는 수정된 버전의
std::promise
(클래스 템플릿) |
|
|
타입 소거된 할당자를 지원하는 수정된 버전의
std::packaged_task
(클래스 템플릿) |
|
메모리 리소스 어댑터
|
allocator를
memory_resource
로 변환합니다
(alias template) |
일반 유틸리티
|
헤더에 정의됨
<experimental/utility>
|
|
|
타입 소거를 위한 플레이스홀더 타입 (예: allocator에서 사용)
(클래스) |
|
|
헤더에 정의됨
<experimental/type_traits>
|
|
|
주어진 인수 타입들로 호출될 때 호출 가능 객체의 암시적 함수 타입을 추론
(클래스 템플릿) |
|
기능 테스트 매크로
|
헤더 파일에 정의됨
<experimental/optional>
|
|
|
__cpp_lib_experimental_optional
|
최소
201411
값은 optional 타입이 지원됨을 나타냄
(매크로 상수) |
|
헤더 파일에 정의됨
<experimental/any>
|
|
|
__cpp_lib_experimental_any
|
최소
201411
값은 any 타입이 지원됨을 나타냄
(매크로 상수) |
|
헤더 파일에 정의됨
<experimental/string_view>
|
|
|
__cpp_lib_experimental_string_view
|
최소
201411
값은 basic_string_view 템플릿이 지원됨을 나타냄
(매크로 상수) |
|
헤더 파일에 정의됨
<experimental/tuple>
|
|
|
__cpp_lib_experimental_apply
|
최소
201402
값은 tuple apply() 함수가 지원됨을 나타냄
(매크로 상수) |
|
헤더 파일에 정의됨
<experimental/type_traits>
|
|
|
__cpp_lib_experimental_type_trait_variable_templates
|
최소
201402
값은 변수 템플릿 타입 특성이 지원됨을 나타냄
(매크로 상수) |
|
__cpp_lib_experimental_invocation_type
|
최소
201406
값은 호출 타입 특성이 지원됨을 나타냄
(매크로 상수) |
|
헤더 파일에 정의됨
<experimental/functional>
|
|
|
__cpp_lib_experimental_boyer_moore_searching
|
최소
201411
값은 추가 검색 알고리즘이 지원됨을 나타냄
(매크로 상수) |
|
__cpp_lib_experimental_function_erased_allocator
|
최소
201406
값은 std::function을 위한 타입 삭제 할당자가 지원됨을 나타냄
(매크로 상수) |
|
헤더 파일에 정의됨
<experimental/future>
|
|
|
__cpp_lib_experimental_promise_erased_allocator
|
최소
201406
값은 std::promise를 위한 타입 삭제 할당자가 지원됨을 나타냄
(매크로 상수) |
|
__cpp_lib_experimental_packaged_task_erased_allocator
|
최소
201406
값은 std::packaged_task를 위한 타입 삭제 할당자가 지원됨을 나타냄
(매크로 상수) |
|
헤더 파일에 정의됨
<experimental/memory>
|
|
|
__cpp_lib_experimental_shared_ptr_arrays
|
최소
201406
값은 shared_ptr 배열이 지원됨을 나타냄
(매크로 상수) |
|
헤더 파일에 정의됨
<experimental/memory_resource>
|
|
|
__cpp_lib_experimental_memory_resources
|
최소
201402
값은 다형적 메모리 리소스가 지원됨을 나타냄
(매크로 상수) |
|
헤더 파일에 정의됨
<experimental/algorithm>
|
|
|
__cpp_lib_experimental_sample
|
201402
값은 sample 알고리즘이 지원됨을 나타냄
(매크로 상수) |
C++17에 통합됨
ISO/IEC TS 19568:2015의 다음 구성 요소들이 C++17에 포함되었습니다.
optional 객체
|
헤더 파일에 정의됨
<experimental/optional>
|
|
|
optional 객체
를 나타내는
클래스 템플릿
(클래스 템플릿) |
|
클래스
any
|
헤더 파일에 정의됨
<experimental/any>
|
|
|
모든 타입의 단일 값을 위한 타입 안전 컨테이너
(클래스) |
|
string_view
|
헤더 파일에 정의됨
<experimental/string_view>
|
|
|
문자열에 대한 비소유 참조
(클래스 템플릿) |
|
타입 소거 및 다형적 할당자
다형성 할당자와 메모리 리소스
이 섹션의 엔터티들은 std::experimental::pmr 네임스페이스에서 선언됩니다.
|
헤더에 정의됨
<experimental/memory_resource>
|
|
|
메모리 리소스를 캡슐화하는 클래스들을 위한 추상 인터페이스
(클래스) |
|
|
서로 다른 블록 크기의 풀에서 할당을 관리하는 스레드 안전한
memory_resource
(클래스) |
|
|
서로 다른 블록 크기의 풀에서 할당을 관리하는 스레드 안전하지 않은
memory_resource
(클래스) |
|
|
리소스가 파괴될 때만 할당된 메모리를 해제하는 특수 목적의
memory_resource
(클래스) |
|
|
생성 시 사용된
memory_resource
를 기반으로 런타임 다형성을 지원하는 할당자
(클래스 템플릿) |
|
전역
operator new
와
operator delete
를 사용하여 메모리를 할당 및 해제하는 정적 프로그램 전체
memory_resource
를 반환
(함수) |
|
할당을 수행하지 않는 정적
memory_resource
를 반환
(함수) |
|
기본
memory_resource
를 얻음
(함수) |
|
기본
memory_resource
를 설정
(함수) |
|
다형적 할당자를 사용하는 컨테이너를 위한 편의 별칭
편의 별칭 및 별칭 템플릿
이 표준 라이브러리의 다음 클래스 템플릿들에 대해 다형성 할당자를 사용하는 컨테이너들을 위한
std::experimental::pmr
네임스페이스에서 제공됩니다:
| 편의 별칭이 제공되는 컨테이너 템플릿 목록 |
|---|
|
헤더 파일에 정의됨
<experimental/memory>
|
|
| 클래스 | 설명 |
|
배열을 지원하는 수정된 버전의
std::shared_ptr
(클래스 템플릿) |
|
|
배열을 지원하는 수정된 버전의
std::weak_ptr
(클래스 템플릿) |
|
샘플링 및 검색 알고리즘
|
헤더 파일에 정의됨
<experimental/algorithm>
|
|
|
시퀀스에서 n개의 임의 요소를 선택함
(함수 템플릿) |
|
|
Searcher를 시퀀스에 적용함
(함수 템플릿) |
|
|
헤더 파일에 정의됨
<experimental/functional>
|
|
|
표준 C++ 라이브러리 검색 알고리즘 구현
(클래스 템플릿) |
|
|
default_searcher를 생성하는 도우미 함수
(함수 템플릿) |
|
|
Boyer-Moore 검색 알고리즘 구현
(클래스 템플릿) |
|
|
boyer_moore_searcher를 생성하는 도우미 함수
(함수 템플릿) |
|
|
Boyer-Moore-Horspool 검색 알고리즘 구현
(클래스 템플릿) |
|
|
boyer_moore_horspool_searcher를 생성하는 도우미 함수
(함수 템플릿) |
|
일반 유틸리티
|
헤더 파일에 정의됨
<experimental/tuple>
|
|
|
인수 튜플에 함수를 호출함
(함수 템플릿) |
|
또한, TS는 표준 라이브러리의 다음 타입 트레이트 및 다른 클래스 템플릿들을 위해
수많은
constexpr
변수 템플릿들을
제공합니다: