Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

C++ 표준 라이브러리 헤더 파일


C++ 표준 라이브러리는 다양한 유형의 라이브러리로 구성됩니다. 다음은 그 아래에 라이브러리가 있는 이러한 모든 유형의 목록입니다.

유틸리티 라이브러리

− 프로그램 제어, 동적 메모리 할당, 난수, 정렬 및 검색과 같은 범용 유틸리티

−신호 관리를 위한 함수 및 매크로 상수(예:SIGINT 등)

−실행 컨텍스트에 저장(및 점프)하는 매크로(및 함수)

− 가변 길이 인수 목록 처리

− 런타임 유형 정보 유틸리티

- std::bitset의 클래스 템플릿

<기능적> − 함수 개체, 함수 호출, 바인딩 작업 및 참조 래퍼

<유틸리티> − 다양한 유틸리티 구성 요소

− C 스타일 시간/날짜 유틸리티

- 표준 매크로 및 typedef

(C++11 이후) − 연관 컨테이너 및 정렬되지 않은 연관 컨테이너에서 인덱스로 사용할 수 있는 type_info 개체 주위의 래퍼

(C++11 이후) − 컴파일 시간 유형 정보

<크로노>(C++11부터) − C++ 시간 유틸리티

(C++11부터) - const T 유형의 객체 배열에 대한 액세스를 제공하는 경량 프록시 객체를 정의하는 라이브러리입니다.

(C++11부터) - 이기종 값의 고정 크기 컬렉션을 정의하는 라이브러리. std::pair의 일반화입니다.

(C++17부터) − any 클래스는 모든 유형의 단일 값에 대한 유형 안전 컨테이너를 설명합니다.

<선택 사항>(C++17부터) − 클래스 템플릿 std::optional은 선택적으로 포함된 값, 즉 존재하거나 없을 수 있는 값을 관리합니다.

<변형>(C++17부터) − 클래스 템플릿 std::variant는 유형 안전 합집합을 나타냅니다. 주어진 시간에 std::variant의 인스턴스는 대체 유형 중 하나의 값을 보유하거나 오류의 경우 값이 없습니다.

<비교>(C++20부터) − 3방향 비교 연산자 지원

동적 메모리 관리

<신규> − 저수준 메모리 관리 유틸리티. new-expression은 동적 저장 기간, 즉 생성된 범위에 제한되지 않는 수명으로 객체 또는 객체 배열을 생성하는 유일한 방법입니다.

<메모리> − 상위 수준의 메모리 관리 유틸리티

(C++11부터) − std::scoped_allocator_adaptor 클래스 템플릿은 다중 레벨 컨테이너(지도의 튜플 목록 집합의 벡터 등)와 함께 사용할 수 있는 할당자입니다.

(C++17부터) − std::pmr::memory_resource 클래스는 메모리 리소스를 캡슐화하는 무제한 클래스 집합에 대한 추상 인터페이스입니다.

숫자 제한

<한계> -적분 유형의 한계

- float 유형의 한계

<한도> -산술 유형의 속성을 쿼리하는 표준화된 방법

(C++11부터) - 고정 크기 유형 및 기타 유형의 제한

(C++11부터) − C 바이트 및 와이드 문자열에서 std::intmax_t 및 std::uintmax_t로의 변환을 제공하고 std::intmax_t에 대한 일부 수학 함수를 오버로드하고 에 선언된 유형에 대해 C 스타일 입/출력 형식 매크로를 제공합니다.

오류 처리

<예외> − 예외 처리 유틸리티

−표준 예외 개체

<카서트> −인수를 0과 비교하는 조건부로 컴파일된 매크로

−마지막 오류 번호를 포함하는 매크로

(C++11 이후) −std::error_code는 플랫폼 종속 오류 코드입니다. 각 std::error_code 개체는 운영 체제 또는 일부 하위 수준 인터페이스에서 발생하는 오류 코드와 해당 인터페이스에 해당하는 std::error_category 유형의 개체에 대한 포인터를 보유합니다.

문자열 라이브러리

− 문자 데이터에 포함된 유형을 결정하는 함수

− 와이드 문자 데이터에 포함된 유형을 판별하는 함수

-다양한 좁은 문자열 처리 기능

-다양한 와이드 및 멀티바이트 문자열 처리 기능

<문자열> −std::basic_string 클래스 템플릿

(C++11부터) − C 스타일의 유니코드 문자 변환 기능

(C++17부터) − 클래스 템플릿 basic_string_view는 위치 0에 시퀀스의 첫 번째 요소가 있는 char 유사 개체의 상수 연속 시퀀스를 참조할 수 있는 개체를 설명합니다.

컨테이너 라이브러리

(C++11부터) - std::배열 컨테이너

<벡터> - std::벡터 컨테이너

- std::deque 컨테이너

<목록> - std::list 컨테이너

(C++11부터) - std::forward_list 컨테이너

- std::set 및 std::multiset 연관 컨테이너

<지도> - std::map 및 std::multimap 연관 컨테이너

(C++11부터) - std::unordered_set 및 std::unordered_multiset 정렬되지 않은 연관 컨테이너

(C++11부터) - std::unordered_map 및 std::unordered_multimap 정렬되지 않은 연관 컨테이너

<스택> - std::스택 컨테이너 어댑터

<대기열> - std::queue 및 std::priority_queue 컨테이너 어댑터

알고리즘 라이브러리

<알고리즘> − 컨테이너에서 작동하는 알고리즘 포함

<실행>(C++17) −알고리즘의 병렬 버전에 대한 사전 정의된 실행 정책

반복자 라이브러리

<반복자> − 컨테이너의 반복자

숫자 라이브러리

− 일반적인 수학 함수

<복잡한> − 복소수 유형

<발라레이> − 값 배열을 표현하고 조작하기 위한 클래스

<무작위>(C++11부터) − 난수 생성기 및 분포

<숫자> − 컨테이너의 값에 대한 숫자 연산

<비율>(C++11 이후) −컴파일 시간 합리적 산술

(C++11부터) − 부동 소수점 환경 액세스 기능

입력/출력 라이브러리

- 입력/출력 라이브러리에 있는 모든 클래스의 전방 선언

− std::ios_base 클래스, std::basic_ios 클래스 템플릿 및 여러 typedef

− std::basic_istream 클래스 템플릿 및 여러 typedef

− std::basic_ostream, std::basic_iostream 클래스 템플릿 및 여러 typedef

- 여러 표준 스트림 개체

- std::basic_fstream, std::basic_ifstream, std::basic_ofstream 클래스 템플릿 및 여러 typedef

<스트림> - std::basic_stringstream, std::basic_istringstream, std::basic_ostringstream 클래스 템플릿 및 여러 typedef

(C++20부터) - std::basic_osyncstream, std::basic_syncbuf 및 typedef

(지원 중단됨) - 표준::strstream, 표준::istrstream, 표준::ostrstream

− 형식 또는 입출력을 제어하는 ​​도우미 기능

- std::basic_streambuf 클래스 템플릿

− C 스타일 입출력 기능

현지화 라이브러리

<로케일> − 현지화 유틸리티

− C 현지화 유틸리티

(C++11부터)(C++17에서 더 이상 사용되지 않음) - 유니코드 변환 기능

정규 표현식 라이브러리

(C++11부터) − 정규식 처리를 지원하는 클래스, 알고리즘 및 반복기

원자 연산 라이브러리

(C++11부터) − 원자 연산 라이브러리

스레드 지원 라이브러리

<스레드>(C++11부터) − std::thread 클래스 및 지원 기능

(C++11부터) - 상호 배제 프리미티브

(C++14부터) - 공유 상호 배제 프리미티브

<미래>(C++11 이후) −비동기 계산을 위한 기본 요소

(C++11부터) - 스레드 대기 조건

파일 시스템 라이브러리

(C++17부터) − std::path 클래스 및 지원 기능