C++ 프로그래밍 언어의 역사는 Bjarne Stroustrup이 박사 학위 논문을 개발하기 시작한 1979년 으로 거슬러 올라갑니다. Stroustrup이 사용할 수 있는 모든 언어 중에 Simula라는 언어가 있는데, 이름에서 알 수 있듯이 주로 시뮬레이션을 위해 설계된 언어일 수 있습니다. Simula 67 언어는 Stroustrup에서 사용하는 변형이며 객체 지향 프로그래밍 패러다임을 지원하는 기본 언어로 간주됩니다. Stroustrup은 이 패러다임이 패키징 개발에 도움이 된다고 생각합니다. 그러나 Simula 언어는 실용적이고 실용적으로 사용하기에는 너무 느립니다. 그 직후 Bjarne Stroustrup은 객체 지향 패러다임을 지원하여 C를 향상시키기를 원했습니다. 그는 구현 아이디어를 얻기 위해 Smalltalk의 OO 구현을 자세히 조사했습니다. 하지만 그는 이를 위해 성능을 포기할 수 없었기 때문에 C++ 코드가 실행 시 C 코드와 비슷한(또는 더 나은) 성능을 나타내기를 바라면서 "C with Classes(C with Classes)" 작업을 시작했습니다.
1983년에 언어 이름이 "C with Classes"에서 C++로 변경되었습니다. C의 ++ 연산자는 변수를 증가시키는 데 사용되는 연산자로, Stroustrup이 언어를 어떻게 보는지에 대한 통찰력을 제공합니다. 이 기간 동안 많은 새로운 기능이 추가되었으며 그 중 가장 주목할만한 것은 가상 함수, 함수 오버로딩, 앰퍼샌드를 사용한 참조, const 키워드 및 두 개의 슬래시를 사용하는 한 줄 주석입니다.
1985년에 Stroustrup은 "C++ 프로그래밍 언어"라는 책을 출판했습니다. 같은 해에 C++가 상용 제품으로 구현되었습니다. 언어는 공식적으로 표준화되지 않았으므로 이 책은 매우 중요한 참고 자료가 됩니다. 언어는 1989년에 다시 업데이트되어 보호 및 정적 멤버와 여러 클래스의 상속을 포함했습니다.
1990년에 주석이 달린 C++ 참조 매뉴얼이 출시되었습니다. 같은 해에 Borland의 Turbo C++ 컴파일러가 상용 제품으로 출시되었습니다. Turbo C++는 C++ 개발에 상당한 영향을 미칠 수 있는 다른 많은 라이브러리를 추가합니다. Turbo C++의 마지막 안정 버전은 2006년이었지만 컴파일러는 여전히 널리 사용되고 있습니다.
1998년에 C++ 표준 위원회는 비공식적으로 C++98로 알려진 최초의 C++ ISO/IEC 14882:1998 국제 표준을 발표했습니다. "Annotated C++ Reference Manual"은 표준 제정에 큰 영향을 미쳤다고 합니다. 또한 1979년 개념 개발이 시작된 표준 템플릿 라이브러리도 포함되어 있습니다. 2003년에 위원회는 1998년 표준에 보고된 여러 문제에 대응하고 이에 따라 표준을 개정했습니다. 변경된 언어는 C++03이라고 합니다.
2005년에 C++ 표준 위원회는 최신 C++ 표준에 추가할 계획인 다양한 기능을 자세히 설명하는 기술 보고서(TR1이라고 함)를 발표했습니다. 새로운 표준은 첫 10년이 끝나기 전에 출시될 것으로 예상되기 때문에 비공식적으로 C++0x로 알려져 있습니다. 아이러니하게도 새로운 표준은 2011년 중반까지 발표되지 않을 것입니다. 그 시점까지 여러 기술 보고서가 게시되었으며 일부 컴파일러는 새로운 기능에 대한 실험적 지원을 추가하기 시작했습니다.
2011년 중반에 새로운 C++ 표준(C++11이라고 함)이 완성되었습니다. Boost 라이브러리 프로젝트는 새로운 표준에 상당한 영향을 미쳤으며 일부 새 모듈은 해당 Boost 라이브러리에서 직접 제공되었습니다. 새로운 기능에는 정규식 지원, 포괄적인 무작위화 라이브러리, 새로운 C++ 타이밍 라이브러리, 원자성 지원, 표준 스레딩 라이브러리, 다른 언어의 foreach 루프와 유사한 기능을 제공하는 새로운 for 루프 구문, auto 키워드, new 등이 있습니다. 컨테이너 클래스, 통합 및 배열 초기화 목록에 대한 더 나은 지원, 가변 템플릿.
2014년에 C++ 14(C++ 1y라고도 함)가 C++11의 작은 확장으로 출시되었습니다. 주요 기능은 버그 수정과 작은 개선입니다. 국제 표준 투표 절차 초안은 2014년 8월 중순에 완성되었습니다. 람다 함수, constexpr 및 유형 추론 기능.
2017년에는 C17 표준이 출시되었습니다. 핵심 언어 및 라이브러리가 향상되었습니다.
2020년에 C++20 표준이 출시되어 많은 헤비급 기능이 출시되었으며 그 중 더 중요한 기능은 다음과 같습니다.
개념: 개념은 우리가 생각하는 방식과 프로그램 템플릿을 변화시킵니다. 이는 템플릿 매개변수의 의미론적 범주입니다. 이를 통해 유형 시스템에서 의도를 직접 표현할 수 있습니다. 문제가 발생하면 명확한 오류 메시지가 표시됩니다.
범위 라이브러리: 새로운 범위 라이브러리를 사용하면 컨테이너에서 직접 알고리즘을 실행하고, 파이프 표기법으로 구성하고, 무한한 데이터 스트림에 적용할 수 있습니다.
코루틴: 코루틴 덕분에 C++의 비동기 프로그래밍이 주류가 되었습니다. 코루틴은 협업 작업, 이벤트 루프, 무한 데이터 스트림 또는 파이프라인의 기초입니다.
모듈: 모듈은 헤더 파일의 한계를 극복합니다. 헤더 파일과 소스 파일의 분리는 전처리기만큼 쓸모가 없게 되었습니다. 마지막으로, 빌드 시간이 더 빨라지고 패키지를 빌드하는 방법이 더 쉬워졌습니다.
동시성: 원자 스마트 포인터, 결합 및 취소 가능한 스레드, C++ 동시 프로그래밍 기능을 향상시키는 C20 동기화 라이브러리
C++ 튜토리얼
C++ 소개
C++ 환경 설정
C++ 기본 구문
C++ 주석
C++ 데이터 유형
C++ 변수 유형
C++ 변수 범위
C++ 상수
C++ 수정자 유형
C++ 스토리지 클래스
C++ 연산자
C++ 루프
C++ 판단
C++ 함수
C++ 숫자
C++ 배열
C++ 문자열
C++ 포인터
C++ 참조
C++ 날짜 및 시간
C++ 기본 입력 및 출력
C++ 데이터 구조
C++ 클래스 및 객체
C++ 상속
C++ 오버로드된 연산자 및 오버로드된 함수
C++ 다형성
C++ 데이터 추상화
C++ 데이터 캡슐화
C++ 인터페이스(추상 클래스)
C++ 파일 및 스트림
C++ 예외 처리
C++ 동적 메모리
C++ 네임스페이스
C++ 템플릿
C++ 전처리기
C++ 신호 처리
C++ 멀티스레딩
C++ 웹 프로그래밍
C++ STL 튜토리얼
C++ 표준 라이브러리
1. 기본지식
8.1 구조의 기본 개념
8.2 구조 정의 및 사용법
8.3 구조체 배열
8.4 구조 포인터
8.5 구조 중첩 구조
8.6 함수 매개변수로서의 구조
8.7 구조체의 Const 사용 시나리오
7.1 포인터의 기본 개념
7.2 포인터 변수의 정의와 사용
7.3 포인터가 차지하는 메모리 공간
7.4 널 포인터와 와일드 포인터
7.5 const 수정 포인터
7.6 포인터와 배열
7.7 포인터와 함수
7.8 포인터, 배열, 함수
1. goto 문(권장하지 않음)
2. 1차원 배열
3. 2차원 배열
4. 기능의 가치 전달
5. 함수 선언
6. 별도의 파일에 함수 작성
7. 포인터
8. 구조
2. 핵심 프로그래밍
3.1 기능 기본 매개변수
3.2 기능 위치 매개변수
3.3 함수 오버로딩
2.1 참고문헌의 기본적 활용
2.2 인용에 관한 참고 사항
2.3 기능 매개변수로서의 참조
2.4 함수 반환 값으로 참조
2.5 인용의 성격
2.6 상수 참조
1.1 프로그램을 실행하기 전
1.2 프로그램 실행 후
1.3 새로운 연산자
1. 메모리 파티션 모델
2. 견적
3. 기능
"C++11에 대한 심층적인 이해: C++11의 새로운 기능 분석 및 적용"
"C++ 입문 클래식(10판)"
"C++ Primer Plus 6판 중국어 버전(Asynchronous Books 제작)"
"청화 컴퓨터 도서 번역 시리즈: C++ 마스터하기(9판)"
"C++ 고급 프로그래밍(제4판)"
"C++ 게임 프로그래밍 입문(4판)(Asynchronous Books 제작)"
"STL 소스코드 분석"
"C++ 프로그래밍: 원리와 실습(기본)(원서 2판)"
"가속 C++ 중국어 버전"
"C++ 프로그래밍 사상(2권)"
"효과적인 STL의 중국어 버전: STL을 효과적으로 사용한 50가지 경험"
"C++ 프로그래밍 분석: 문제, 해결 방법 및 설계 지침"
"C++ 템플릿 중국어 버전"
"C++ 디자인의 새로운 사고"
"C++ 템플릿 메타프로그래밍"
"C++ 동시 프로그래밍 실습"
"C++ 프로그래밍 언어(1~3부)(원서 4판)"
"C++ 표준 라이브러리(2판)"
"필수 C++"
"C++ 언어의 설계와 진화"
"C++ 개체 모델에 대한 심층 탐구"
"일반 프로그래밍 및 STL"
모든 C++ 개발자가 사용해야 하는 10가지 C++11 기능
C++ 프로젝트에서 실제로 사용해야 하는 15가지 C++11 기능
C++11에서 람다 표현식을 사용하는 방법
C++11에 대한 깊은 이해
혈액 구토 정렬: C++11의 새로운 기능
C++11의 새로운 기능 auto 및 decltype 지식 포인트
C++11의 새로운 기능: lvalue 참조, rvalue 참조, 이동 의미 체계, 완벽한 전달
C++11 새로운 기능 목록 초기화
C++11의 새로운 기능 std::function 및 람다 표현식
C++11의 새로운 기능: 템플릿 개선
C++11의 새로운 기능 및 스레드 관련 지식 포인트
C++11의 새로운 기능 비동기 작업-async
C++11의 새로운 기능 스마트 포인터
C++11의 일반적인 새로운 기능(1)
C++11의 일반적인 새로운 기능(2)
C++14의 새로운 기능에 대한 간략한 토론
C++14의 새로운 기능에 대한 모든 지식 포인트는 여기에 있습니다.
요약: C++17의 새로운 기능
C++20 언어 기능
P1 C++ 프로그래밍 소개
P2 헤더 파일 및 클래스 선언
P3 생성자
P4 매개변수 전송 및 반환 값
P5 연산자 오버로딩 및 임시 객체
P6 Complex 클래스 구현 프로세스 검토
P7 세 가지 주요 기능: 복사 구성, 복사 복제 및 파괴
P8 힙, 스택 및 메모리 관리
P9 String 클래스 구현 과정 검토
P10 확장: 클래스 템플릿, 함수 템플릿 및 기타
P11 구성과 상속
P13 커미션 관련 디자인
P14 1 소개
P15 2 변환 기능
P16 3 비명시적 인수 생성자 1개
클래스와 같은 P17 4 포인터
클래스와 같은 P18 5 기능
P19 6 네임스페이스 경험 토론
P20 7 클래스 템플릿
P21 8 기능 템플릿
P22 9 멤버 템플릿
P23 10 전문화
P24 11 템플릿 부분 전문화
P25 12 템플릿 템플릿 매개변수
P26 13 C++ 표준 라이브러리에 대하여
P27 14 세 가지 테마
P28 15 참조
P29 16 복합 및 상속 관계에서 생성 및 소멸
P30 17 vptr 및 vtbl 정보
P31 18 이에 대해
P32 19 0 동적 바인딩에 대하여
P33 19 1 동적 바인딩에 대하여
P34 20 신규,삭제 정보
P35 21 연산자 신규, 연산자 삭제
P36 22 예
P37 23 new,delete$ 예제 오버로딩
P38 24 기본 문자열은 newextra를 사용하여 응용 프로그램 볼륨을 확장합니다.
C++ 표준 라이브러리 - 핵심 언어와 C++ ISO 표준 자체의 일부로 작성된 클래스 및 함수 모음
표준 템플릿 라이브러리 - 표준 템플릿 라이브러리
C POSIX 라이브러리 - POSIX 시스템용 C 표준 라이브러리 사양
ISO C++ 표준 위원회 - C++ 표준 위원회
C++ FAQ – C++ 자주 묻는 질문
Free Country − Free Country는 압축, 보관, 게임 프로그래밍, 표준 템플릿 라이브러리 및 GUI 프로그래밍과 같은 C++ 프로그래밍 분야를 다루는 무료 C++ 소스 코드와 C++ 라이브러리를 제공합니다.
C 및 C++ 사용자 그룹 - C 및 C++ 사용자 그룹은 AI, 애니메이션, 컴파일러, 데이터베이스, 디버깅, 암호화, 게임, 그래픽, GUI, 언어 도구, 시스템 프로그래밍 등을 포함한 다양한 프로그래밍 분야를 다루는 C++ 프로젝트에 대한 무료 소스 코드를 제공합니다. .
LearnCpp - 무료로 C++ 프로그래밍 배우기
CodeCogs - CodeCogs는 C/C++용 수치 구성요소의 협업 오픈 소스 라이브러리입니다.
codeproject - codeproject에서 제공하는 C/C++ 리소스 코드 프로젝트
Thinkco - 게임 관련 C++ 소스 코드
무료 C/C++ 라이브러리 - 무료 C++ 소스 코드 및 기타 유용한 도구
C++ 표준 라이브러리 - 여러 C/C++ 웹 사이트에 대한 링크 목록을 수집하는 웹 페이지입니다.
cplusplus - C++ 학습 웹사이트
C++ 소스 코드 - C++용 소스 코드 345개의 포괄적인 목록입니다.
Apache C++ 표준 라이브러리: 알고리즘, 컨테이너, 반복자 및 기타 기본 구성 요소의 모음입니다.
ASL: Adobe 소스 코드 라이브러리는 동료 검토를 거친 이식 가능한 C++ 소스 코드 라이브러리를 제공합니다.
Boost: 범용 C++ 라이브러리의 대규모 컬렉션입니다.
BDE: Bloomberg Intelligence Labs의 개발 환경.
Cinder: 전문가 수준의 창의적인 코딩을 제공하는 오픈 소스 개발 커뮤니티입니다.
Bxxomfort: C++11의 새로운 기능 중 일부를 C++03으로 이식하는 경량 헤더 전용 라이브러리입니다.
Dlib: 계약 프로그래밍과 최신 C++ 기술을 사용하여 설계된 범용 크로스 플랫폼 C++ 라이브러리입니다.
EASTL: EA-STL 공개 부분
ffead-cpp: 엔터프라이즈 애플리케이션 개발 프레임워크
Folly: Facebook에서 개발하고 사용하는 오픈 소스 C++ 라이브러리입니다.
JUCE: 크로스 플랫폼 소프트웨어 개발을 위한 포괄적인 C++ 라이브러리
libphenom: 고성능 및 확장성이 뛰어난 시스템을 구축하기 위한 이벤트 프레임워크입니다.
LibSourcey: 실시간 비디오 스트리밍 및 고성능 네트워크 애플리케이션을 위한 C++11 이벤트 IO
Loki: 일반적인 디자인 패턴과 관용구의 구현을 포함한 C++ 라이브러리의 디자인입니다.
MiLi: 작은 헤더 전용 C++ 라이브러리
openFrameworks: 창의적인 코딩을 위한 C++ 툴킷을 개발합니다.
Qt: 크로스 플랫폼 애플리케이션 및 사용자 인터페이스 프레임워크
이유: 개발자가 Java, .Net 및 Python을 더 쉽게 사용하는 동시에 C++의 성능 및 이점에 대한 요구 사항을 충족할 수 있는 크로스 플랫폼 프레임워크입니다.
ROOT: CERN에서 사용하는 대량의 데이터를 매우 효율적으로 처리하고 분석하는 모든 기능을 갖춘 객체 지향 프레임워크 세트입니다.
STLport: STL의 대표적인 버전입니다.
STXXL: 추가적인 대규모 데이터 세트를 위한 표준 템플릿 라이브러리입니다.
Ultimate++: C++ 크로스 플랫폼 신속한 애플리케이션 개발 프레임워크
Windows 템플릿 라이브러리 : Windows 애플리케이션 및 UI 구성요소 개발을 위한 C++ 라이브러리
Yomm11: C++11용 다중 메서드를 엽니다.
Boost.Asio: 네트워크 및 저수준 I/O 프로그래밍을 위한 크로스 플랫폼 C++ 라이브러리.
libev: 모든 기능을 갖춘 고성능 시간 루프로, libevent를 약간 모델로 했지만 더 이상 libevent와 동일한 제한 사항이 없으며 일부 버그가 수정되었습니다.
libevent: 이벤트 알림 라이브러리
libuv: 크로스 플랫폼 비동기 I/O.
libco: 코루틴, 온라인에서 동시에 8억 명의 사용자를 지원하는 WeChat의 기본 IO 라이브러리입니다. 강한
libgo: Golang 스타일 동시성 프레임워크, C++11 구현 코루틴 라이브러리
ACE: C++ 객체 지향 네트워킹 툴킷
카사블랑카: C++ REST SDK
cpp-netlib: 고급 네트워크 프로그래밍을 위한 오픈 소스 라이브러리 모음
libCurl: 다중 프로토콜 파일 전송 라이브러리
Mongoose: 매우 가벼운 웹 서버
Muduo: Linux 다중 스레드 서버용 C++ 비차단 네트워크 라이브러리
net_skeleton: C/C++용 TCP 클라이언트/서버 라이브러리
POCO: 데스크톱, 서버, 모바일 및 임베디드 시스템에서 실행할 수 있는 네트워크 및 인터넷 기반 애플리케이션을 구축하기 위한 C++ 클래스 라이브러리입니다.
RakNet: 게임 개발자를 위한 크로스 플랫폼 오픈 소스 C++ 네트워크 엔진입니다.
Tufao: Qt 위에 C++로 구축된 비동기 웹 프레임워크입니다.
WebSocket++: C++/Boost Aiso 기반의 websocket 클라이언트/서버 라이브러리
ZeroMQ: 고속 모듈형 비동기 통신 라이브러리
f-stack: Tencent의 오픈 소스 프로토콜 스택, DPDK 기반의 고성능 사용자 모드 프로토콜 스택입니다.
NtyTcp: netmap, DPDK, rawSocket 구현을 기반으로 하는 단일 스레드 프로토콜 스택입니다.
LWIP: RAM 플랫폼을 위한 TCP/IP 프로토콜 스택 구현의 간소화된 버전입니다.
mTCP: 멀티 코어 시스템을 위한 확장성이 뛰어난 사용자 공간 TCP/IP 프로토콜 스택입니다.
4.4BSD: * nix 프로토콜 스택은 4.4BSD에서 파생되었습니다.
Nginx: IMAP/POP3/SMTP 서비스도 제공하는 고성능 HTTP 및 역방향 프록시 웹 서버입니다.
Lighttpd: 안전하고 빠르며 업계 표준을 준수하고 적응성이 뛰어나며 구성이 많은 환경에 최적화된 오픈 소스 웹 서버 소프트웨어입니다.
Libmicrohttpd: GNU 소프트웨어 기반의 간단한 c 라이브러리 웹 서버입니다. API는 간단하고 빠릅니다.
shttpd: 몽구스 기반 웹 서버 프레임워크.
CivetWeb: CGI, SSL 및 Lua 지원 옵션을 갖춘 사용하기 쉽고 강력한 C/C++ 임베디드 웹 서버를 제공합니다.
CppCMS: 무료 고성능 웹 개발 프레임워크(CMS 아님).
Crow: C++ 마이크로 웹 프레임워크(Python Flask에서 영감을 받음)
Kore: C로 개발된 웹 애플리케이션을 위한 매우 빠르고 유연한 웹 서버/프레임워크.
libOnion: C 프로그래밍 언어를 사용하여 웹 서버를 만드는 데 도움이 되는 경량 라이브러리입니다.
QDjango: C++로 작성되고 Qt 라이브러리를 기반으로 하는 웹 프레임워크로 Django API를 에뮬레이션하려고 시도하므로 이름이 붙여졌습니다.
Wt: 웹 애플리케이션 개발을 위한 C++ 라이브러리.
C++ 표준 라이브러리: 핵심 언어로 작성된 클래스 및 함수 모음이며 C++ ISO 표준 자체의 일부입니다.
표준 템플릿 라이브러리: 표준 템플릿 라이브러리, STL
ISO C++ 표준 위원회 : C++ 표준 위원회
FMOD: 사용하기 쉬운 크로스 플랫폼 오디오 엔진 및 오디오 콘텐츠 게임 제작 도구입니다.
Maximilian: C++ 오디오 및 음악 디지털 신호 처리 라이브러리
OpenAL: 오픈 소스 오디오 라이브러리 - 크로스 플랫폼 오디오 API
Opus: 완전 개방형, 로열티 프리, 다용도 오디오 코덱
Speex: 무료 코덱, Opus에서는 더 이상 사용되지 않음
Tonic: C++에서 사용하기 쉽고 효율적인 오디오 합성
Vorbis: Ogg Vorbis는 완전히 개방적이고 비독점적이며 로열티가 없는 범용 압축 오디오 형식입니다.
lisequence : 인구 유전학 데이터를 표현하고 분석하기 위한 C++ 라이브러리입니다.
SeqAn: 생물학적 데이터의 서열 분석을 위한 알고리즘 및 데이터 구조에 중점을 둡니다.
Vcflib: VCF 파일 구문 분석 및 처리를 위한 C++ 라이브러리
Wham: BAM 파일의 유전적 구조 변형에 직접 연관 테스트를 적용합니다.
bzip2 : 완전 무료이고 특허가 없는 고품질 데이터 압축입니다.
doboz: 빠른 압축 해제를 위한 압축 라이브러리
PhysicsFS: 주로 비디오 게임에 사용되는 다양한 아카이브에 대한 추상적인 액세스를 제공하는 라이브러리입니다. 디자인은 부분적으로 Quake3의 파일 하위 시스템에서 영감을 받았습니다.
KArchive: 파일 아카이브(예: zip 및 tar)를 생성, 읽기, 쓰기 및 조작하기 위한 라이브러리로, QIODevice의 일련의 하위 클래스를 통해 gzip 형식을 사용하여 데이터의 투명한 압축 및 압축 해제를 제공합니다.
LZ4: 매우 빠른 압축 알고리즘
LZHAM: 무손실 압축 데이터베이스, 압축 비율은 LZMA에 가깝지만 압축 해제 속도는 훨씬 빠릅니다.
LZMA: 7z 형식의 기본 및 일반적인 압축 방법입니다.
LZMAT: 빠른 실시간 무손실 데이터 압축 라이브러리
Minizip: Zlib의 최신 버그 수정으로 PKWARE 디스크 스패닝, AES 암호화 및 IO 버퍼링을 지원합니다.
Snappy: 빠른 압축 및 압축 해제
ZLib: 매우 컴팩트한 데이터 스트림 압축 라이브러리
ZZIPlib: ZIP 아카이브에 대한 읽기 액세스를 제공합니다.
Boost.Compute: OpenCL용 C++ GPU 컴퓨팅 라이브러리
Bolt: GPU에 최적화된 C++ 템플릿 라이브러리
C++React: C++11용 반응형 프로그래밍 라이브러리
인텔 TBB: 인텔 스레딩 빌딩 블록
Libclsph: OpenCL 기반 GPU 가속 SPH 유체 시뮬레이션 라이브러리
OpenCL: 이기종 시스템의 병렬 프로그래밍을 위한 개방형 표준
OpenMP: 오픈MP API
Thrust: C++ 표준 템플릿 라이브러리와 유사한 병렬 알고리즘 라이브러리
HPX: 모든 규모의 병렬 및 분산 애플리케이션을 위한 범용 C++ 런타임 시스템
VexCL: OpenCL/CUDA용 C++ 벡터 표현식 템플릿 라이브러리.
Bcrypt: 암호화된 파일을 지원되는 모든 운영 체제 및 프로세서에 이식할 수 있게 해주는 크로스 플랫폼 파일 암호화 도구입니다.
BeeCrypt: 강력한 기능과 편리한 인터페이스를 갖춘 빠른 암호화 그래픽 라이브러리입니다.
Botan: C++ 암호화 라이브러리
Crypto++: 암호화 체계를 위한 무료 C++ 라이브러리
GnuPG: OpenPGP 표준의 완전한 구현
GnuTLS: SSL, TLS 및 DTLS 프로토콜을 구현하는 보안 통신 라이브러리
Libgcrypt: GnuPG 기반 암호화 그래픽 라이브러리입니다.
Libmcrypt: 스레드로부터 안전하며 통합 API를 제공합니다.
LibreSSL: 무료 SSL/TLS 프로토콜, 2014 OpenSSL의 포크
LibTomCrypt: 매우 포괄적인 모듈식 휴대용 암호화 도구
libsodium: 독선적이고 사용하기 쉬운 NaCI 기반 암호화 라이브러리
Nettle: 기본 암호화 라이브러리
OpenSSL: 강력하고 상업적이며 모든 기능을 갖춘 오픈 소스 암호화 라이브러리입니다.
hiberlite: Sqlite3용 C++ 객체 관계형 매핑
LevelDB: 빠른 키-값 저장
LMDB: 데이터베이스의 네 가지 기본 요소를 준수하는 내장형 키-값 저장소
MySQL++: MySql의 C API를 캡슐화하는 C++ 래퍼
RocksDB: Facebook에서 삽입된 키-값을 빠르게 저장
SQLite: 크기가 수백 KB에 불과하고 프로젝트에 올바르게 포함될 수 있는 완전한 내장형, 모든 기능을 갖춘 관계형 데이터베이스입니다.
MongoDB: 분산 파일 스토리지 기반 데이터베이스
Boost.Test: 부스트 테스트 라이브러리
Catch: 단위 테스트, 테스트 중심 개발 및 동작 중심 개발을 위한 헤더 파일만 포함하는 매우 세련된 C++ 기본 프레임워크입니다.
CppUnit: JUnit에서 이식된 C++ 테스트 프레임워크
GoogleTest: Google C++ 테스트 프레임워크
ig-debugheap: 메모리 오류 추적을 위한 다중 플랫폼 디버그 힙
MemTrack: C++에서 메모리 할당을 추적합니다.
MicroProfile: 크로스 플랫폼 네트워크 시도 프로파일러
UnitTest++: 경량 C++ 단위 테스트 프레임워크
C++ B-Tree: B-트리 데이터 구조를 기반으로 명령 메모리 컨테이너를 구현하는 템플릿 라이브러리
해시맵: C++에서 개방형 주소 지정 해시 테이블 알고리즘 구현
Cocos2d-x: 2D 게임, 대화형 서적, 프레젠테이션 및 기타 그래픽 애플리케이션을 구축하기 위한 크로스 플랫폼 프레임워크입니다.
Grit: 오픈 월드 3D 게임용 무료 게임 엔진을 구축하기 위한 커뮤니티 프로젝트입니다.
lrrlicht: C++ 언어로 작성된 오픈 소스 고성능 실시간 #D 엔진
PolyCode: C++(Lua와 함께 번들로 제공)로 구현된 게임을 만들기 위한 오픈 소스 프레임워크입니다.
bgfx: 크로스 플랫폼 렌더링 라이브러리
Cairo: 다중 출력 장치를 지원하는 2D 그래픽 라이브러리
Horde3D: 소형 3D 렌더링 및 애니메이션 엔진
매그넘: C++11 및 OpenGL 2D/3D 그래픽 엔진
Ogre 3D: C++로 작성된 장면 중심의 유연한 실시간 3D 렌더링 엔진(게임 엔진 아님)
OpenSceneGraph: 고성능 오픈 소스 3D 그래픽 툴킷
Panda3D: Python 및 C++로 작성된 3D 렌더링 및 게임 개발을 위한 프레임워크입니다.
Skia: 텍스트, 그래픽, 이미지 그리기를 위한 완벽한 2D 그래픽 라이브러리
urho3d: 크로스 플랫폼 렌더링 및 게임 엔진.
Boost.GIL: 일반 이미지 라이브러리
CImg: 이미지 처리를 위한 작은 오픈 소스 C++ 툴킷
FreeImage: 일반적인 이미지 형식과 오늘날의 멀티미디어 애플리케이션에 필요한 기타 형식을 지원하는 오픈 소스 라이브러리입니다.
GDCM: 풀뿌리 DICOM 라이브러리
ITK: 크로스 플랫폼 오픈 소스 이미지 분석 시스템
Magick++: ImageMagick 프로그램에 대한 C++ 인터페이스
OpenCV: 오픈 소스 컴퓨터 비전 라이브러리
tesseract-ocr: OCR 엔진
VIGRA: 이미지 분석을 위한 범용 C++ 컴퓨터 비전 라이브러리
VTK: 3D 컴퓨터 그래픽, 이미지 처리 및 시각화를 위한 오픈 소스 무료 소프트웨어 시스템입니다.
gettext : GNU gettext
IBM ICU: 유니코드 및 세계화 지원을 제공하는 C, C++ 및 Java 라이브러리
libiconv: 서로 다른 문자 인코딩 간의 인코딩 변환 라이브러리
고정: C/C++용 Jason 구문 분석 생성기
Jansson: Jason 데이터 인코딩, 디코딩 및 처리를 위한 C 언어 라이브러리
jbson: C++14에서 BSON 데이터와 Json 문서를 구축하고 반복하기 위한 라이브러리입니다.
JeayeSON: 헤더 파일만 포함하는 매우 강력한 C++ JSON 라이브러리
JSON++: C++ JSON 파서
json-parser : 메모리 사용량이 매우 적은 휴대용 ANSI C로 작성된 JSON 파서
json11 : 미니 C++11 JSON 라이브러리
jute : 매우 간단한 C++ JSON 파서
ibjson: C로 작성된 JSON 구문 분석 및 인쇄 라이브러리로 모든 모델과 쉽게 통합됩니다.
libjson: 경량 JSON 라이브러리
PicoJSON: 헤더 파일만 포함하는 C++의 JSON 구문 분석 및 직렬화
Qt-Json: JSON 데이터와 QVariant 계층 간의 구문 분석을 위한 간단한 클래스
QJson: JSON 데이터를 QVariant 개체에 매핑하기 위한 Qt 기반 라이브러리
RepidJSON: SAX 및 DOM 스타일 API를 포함한 C++용 빠른 JSON 구문 분석 생성기
Boost.Log: 매우 모듈화되고 확장 가능하도록 설계되었습니다.
easyloggingpp: 단일 헤더 파일만 포함하는 C++ 로깅 라이브러리입니다.
Log4cpp: 파일, 시스템 로그, IDSA 및 기타 장소에 로그를 유연하게 추가하는 일련의 C++ 라이브러리입니다.
templog : C++ 애플리케이션에 로깅을 추가할 수 있는 경량 C++ 라이브러리
btsk: 게임 동작 트리 실행 도구
진화하는 객체: 자신만의 확률론적 최적화 알고리즘을 매우 빠르게 작성하는 데 도움이 되는 템플릿 기반의 ANSI C++ 진화 컴퓨팅 라이브러리입니다.
Caffe: 빠른 신경망 프레임워크
CCV: C 언어를 핵심으로 하는 최신 컴퓨터 비전 라이브러리
mlpack: 확장 가능한 C++ 기계 학습 라이브러리
OpenCV: 오픈 소스 컴퓨터 비전 라이브러리
추천자: 협업 필터링을 사용하여 제품 추천/제안을 위한 C 라이브러리입니다.
SHOGUN: Shogun 머신러닝 도구
sofia-ml: 기계 학습을 위한 빠른 증분 알고리즘 모음
Armadillo: 속도와 사용 편의성 사이의 적절한 균형을 유지하는 고품질 C++ 선형 대수학 라이브러리입니다. 구문은 MatlAB와 매우 유사합니다.
blaze: 조밀하고 희소한 알고리즘을 위한 고성능 C++ 수학 라이브러리입니다.
ceres-solver: 크고 복잡한 비선형 최소 제곱 문제를 모델링하고 해결하기 위한 Google의 C++ 라이브러리입니다.
CGal: 효율적이고 안정적인 집합 알고리즘 모음
CML: 게임 및 그래픽을 위한 무료 C++ 수학 라이브러리
Eigen: 선형 대수학, 행렬, 벡터 연산, 수치해석 및 기타 관련 알고리즘을 다루는 고급 C++ 템플릿 헤더 라이브러리입니다.
GMTL: 수학적 그래픽 템플릿 라이브러리는 기본 그래픽을 광범위하게 구현하기 위한 도구 세트입니다.
GMP: 부호 있는 정수, 유리수 및 부동 소수점 숫자를 다루는 고정밀 계산을 위한 C/C++ 라이브러리입니다.
GStreamer: 미디어 처리 구성 요소의 그래프를 작성하기 위한 라이브러리
LIVE555 스트리밍 미디어: 개방형 표준 프로토콜(RTP/RTCP, RTSP, SIP)을 사용하는 멀티미디어 스트리밍 라이브러리
libVLC: libVLC(VLC SDK) 미디어 프레임워크
QtAV: 플레이어를 쉽게 작성하는 데 도움이 되는 Qt 및 FFmpeg 기반 멀티미디어 재생 프레임워크
SDL: 미디어 계층을 간단하게 직접 제어
SFML: 빠르고 간단한 멀티미디어 라이브러리
Box2D: 2D 게임 물리 엔진.
Bullet: 3D 게임 물리 엔진.
Chipmunk: 빠르고 가벼운 2D 게임 물리 라이브러리
LiquidFun: 2D 게임 물리 엔진
ODE: Open Dynamics Engine - 강체 역학 시뮬레이션을 위한 오픈 소스 고성능 라이브러리입니다.
ofxBox2D: Box2D 오픈 소스 프레임워크 래퍼.
Simbody: 차량, 로봇, 인간 골격과 같은 관절 생체 역학 및 기계 시스템을 시뮬레이션하기 위한 고성능 C++ 다물체 동역학/물리 라이브러리입니다.
MOOS-Ivp: 로봇 플랫폼, 특히 자율 해양 차량에 자율성을 제공하는 오픈 소스 C++ 모듈 세트입니다.
MRPT: 모바일 로봇 프로그래밍 툴킷
PCL: Point Cloud Library는 2D/3D 이미지 및 포인트 클라우드 처리를 위한 독립적인 대규모 개방형 프로젝트입니다.
Robotics Library: 로봇 역학, 모션 계획 및 제어를 포함하는 독립형 C++ 라이브러리입니다.
RobWork: 로봇 시스템의 시뮬레이션 및 제어를 위한 C++ 라이브러리 모음입니다.
ROS: 소프트웨어 개발자가 로봇 애플리케이션을 만드는 데 도움이 되는 라이브러리와 도구를 제공하는 로봇 운영 체제입니다.
ChaiScript: 사용하기 쉬운 C++용 임베디드 스크립트 언어입니다.
Lua: 구성 파일 및 기본 애플리케이션 스크립트를 위한 작고 빠른 스크립팅 엔진입니다.
luacxx : Lua 바인딩 생성을 위한 C++11 API
SWIG : C++ 코드를 JavaScript, Perl, PHP, Python, Tcl 및 Ruby에 연결할 수 있는 래퍼/인터페이스 생성기
V7: 임베디드 JavaScript 엔진.
V8: 모든 C++ 애플리케이션에 삽입할 수 있는 Google의 빠른 JavaScript 엔진입니다.
Cap'n Proto: 빠른 데이터 교환 형식 및 RPC 시스템.
시리얼 : C++11 직렬화 라이브러리
FlatBuffers: 메모리 효율적인 직렬화 라이브러리
MessagePack: JSON과 같은 C/C++용 효율적인 바이너리 직렬화 라이브러리
ProtoBuf: 프로토콜 버퍼, Google의 데이터 교환 형식입니다.
SimpleBinaryEncoding : 대기 시간이 짧은 애플리케이션을 위해 바이너리 형식으로 애플리케이션 정보를 인코딩 및 디코딩합니다.
Thrift: 원래 Facebook에서 개발한 C++, Java, Python, PHP, C# 및 기타 여러 언어에서 사용되는 효율적인 교차 언어 IPC/RPC입니다.
libvpx: VP8/VP9 인코딩 및 디코딩 SDK
FFMpeg: 비디오 및 오디오 스트림을 녹화하고 변환하기 위한 완벽한 크로스 플랫폼 솔루션입니다.
libde265: h.265 비디오 코덱의 개방형 구현입니다.
OpenH264: 오픈 소스 H.364 코덱.
Theora: 무료 오픈 소스 비디오 압축 형식.
LibXml++: C++용 XML 파서
PugiXML: XPath를 지원하는 가볍고 간단하며 빠른 C++용 XML 파서입니다.
RapidXML: 사용 용이성, 이식성 및 합리적인 W3C 호환성을 유지하면서 가장 빠른 XML 파서를 생성하려고 시도합니다.
TinyXML: 다른 프로젝트에 쉽게 통합할 수 있는 간단하고 작은 C++ XML 파서입니다.
TinyXML2: 다른 프로젝트에 쉽게 통합할 수 있는 간단하고 빠른 C++ CML 파서입니다.
TinyXML++: C++, 템플릿, 예외 및 향상된 예외 처리의 많은 장점을 활용하는 완전히 새로운 TinyXML 인터페이스입니다.
Xerces-C++: 이식 가능한 C++의 하위 집합으로 작성된 XML 유효성 검사 파서.
스레드_로컬
static_assert
nullptr
제외
Decltype
constexpr
char16_t
char32_t
정렬
정렬
자동
수업
기본
삭제
내보내다
통근자
인라인
변하기 쉬운
크기
구조체
사용하여
is_void
is_integral
is_floating_point
is_array
is_enum
is_union
is_class
is_function
is_pointer
is_lvalue_reference
is_rvalue_reference
is_member_object_pointer
is_member_function_pointer
is_fundamental
is_arithmetic
is_scalar
is_object
is_compound
is_reference
is_member_pointer
is_const
is_휘발성
사소한 일이다
is_trivially_copyable
is_standard_layout
is_literal_type
is_empty
is_다형성
is_abstract
is_signed
서명되지 않음
is_constructible
is_trivially_constructible
is_nothrow_constructible
is_default_constructible
is_trivially_default_constructible
is_nothrow_default_constructible
is_copy_constructible
is_trivially_copy_constructible
is_nothrow_copy_constructible
is_move_constructible
is_trivially_move_constructible
is_nothrow_move_constructible
할당 가능
is_trivially_할당 가능
is_nothrow_할당 가능
is_copy_할당 가능
is_trivially_copy_할당 가능
is_nothrow_copy_할당 가능
is_move_할당 가능
is_trivially_move_할당 가능
is_nothrow_move_할당 가능
파괴 가능
is_trivially_destructible
is_nothrow_destructible
has_virtual_destructor
표준::배열
표준::forward_list
표준::시작
표준::끝
표준::이동
컨테이너 초기화
자리를 잡다
표준::순서가 없는_맵
표준::순서가 없는_다중 맵
표준::순서가 없는_세트
표준::순서가 없는_다중 집합
std :: make_tuple
STD :: 얻으십시오
std :: 넥타이
std :: hash <std :: string>
std :: hash <std :: u16string>
std :: hash <std :: u32string>
std :: hash <std :: wstring>
std :: hash <std :: error_code>
std :: hash <std :: bitset>
std :: hash <std :: type_index>
std :: hash <std :: vector <bool >>
std :: shared_ptr
std :: 약점
std :: 독특한 _ptr
auto_ptr (더 이상 사용되지 않음)
BASIC_REGEX
sub_match
match_results
CV 자격을 갖춘 기능
견적 자격
std :: 기능
std :: bind
std :: bad_function_call
mem_fn
유형 별명
클래스 멤버 초기화
함수
대의원 생성자
생성자를 상속합니다
생성자를 이동하십시오
할당 연산자를 이동하십시오
앵글 브래킷 ">"
별칭 템플릿
외부 템플릿
변수 템플릿
기본 템플릿 매개 변수
STD :: Atomic <BOOL>
std :: Atomic <char>
std :: atomic <signed char>
std :: Atomic <부호없는 char>
std :: Atomic <short>
std :: Atomic <서명되지 않은 짧은>
std :: Atomic <int>
std :: Atomic <부호없는 int>
std :: Atomic <long>
std :: Atomic <부호없는 long>
std :: Atomic <Long Long>
std :: atomic <긴장된 긴 길이>
std :: Atomic <char8_t>
std :: Atomic <char16_t>
std :: Atomic <char32_t>
std :: Atomic <WCHAR_T>
std :: atomic <std :: int8_t>
std :: atomic <std :: uint8_t>
std :: atomic <std :: int16_t>
std :: atomic <std :: uint16_t>
std :: atomic <std :: int32_t>
std :: atomic <std :: uint32_t>
std :: atomic <std :: int64_t>
std :: atomic <std :: uint64_t>
std :: atomic <std :: int_least8_t>
std :: atomic <std :: uint_least8_t>
std :: atomic <std :: int_least16_t>
std :: atomic <std :: uint_least16_t>
std :: atomic <std :: int_least32_t>
std :: atomic <std :: uint_least32_t>
std :: atomic <std :: int_least64_t>
std :: atomic <std :: uint_least64_t>
std :: atomic <std :: int_fast8_t>
std :: atomic <std :: uint_fast8_t>
std :: atomic <std :: int_fast16_t>
std :: atomic <std :: uint_fast16_t>
std :: atomic <std :: int_fast32_t>
std :: atomic <std :: uint_fast32_t>
std :: atomic <std :: int_fast64_t>
std :: atomic <std :: uint_fast64_t>
std :: 스레드
std :: mutex
std :: 잠금
std :: call_once
STD :: Atomic
std :: cond_ition_variable
std :: 비동기
휘발성 물질
STD :: 미래
std :: Thread_local
std :: exception_ptr
std :: make_exception_ptr
std :: current_exception
std :: rethrow_exception
std :: nested_exception
std :: trash_with_nested
std :: rethrow_if_nested
std :: error_category
std :: generic_category
std :: error_condition
std :: errc
std :: error_code
std :: System_Error
구문 : __pragma (문자열 리터럴)
_pragma 연산자
_cplusplus 매크로
(x : 범위) 용 루프 용
정렬
정렬
std :: alignment_of
std :: aligned_storage
std :: max_align_t
std :: 정렬
명백한 키워드
구문 : static_assert (상수 표현, "프롬프트 문자열")
정적 인제
수치 제한
원시 문자열
추적 반환 유형 구문
확장 된 친구 구문
확장 정수
무제한 협회
인라인 네임 스페이스
사용자 정의 문자
강력하게 입력 된 열거
임의의 장치
std :: ref and std :: cref
constexpr
람다 식
nullptr
유형이 좁아지는 것을 방지하십시오
이니셜 라이저 목록 - initializer 목록
Initializer_List (입력 매개 변수로)
통합 초기화 구문 및 시맨틱
현물 상환 지불
오래 오래
이동 의미론
rvalue 참조
C99 기능
일반화 된 sfinae 규칙
유형이 std :: nullptr_t인지 확인하십시오
is_final (유형이 최종 클래스 유형인지 확인)
Exchange (실제 매개 변수를 새 값으로 바꾸고 이전 값을 반환)
integer_Sequence (컴파일 타임 정수 시퀀스 구현)
rbegin (컨테이너 또는 어레이를 가리키는 역 반복자를 반환합니다)
crbegin (컨테이너 또는 어레이를 가리키는 역 반복자를 반환합니다)
렌드 (컨테이너 또는 어레이의 역 테일 반복자를 반환합니다)
CREND (컨테이너 또는 어레이의 리버스 테일 반복자를 반환합니다)
make_reverse_iterator
시작하다
cbegin
끝
CEND (컨테이너 또는 배열 끝에서 끝나는 반복자로 돌아갑니다)
rbegin
crbegin
렌드 (컨테이너 또는 배열의 리버스 테일 반복자로 돌아 가기)
CREND (컨테이너로 돌아 가거나 배열의 반대 꼬리 반복자)
등록하다
바이트 (바이트 타입)
IS_AGGREGRATE (응집 유형을 확인)
is_swappable_with (유형의 객체를 동일한 유형 또는 다른 유형의 객체와 교환 할 수 있는지 확인)
is_swappabl
is_nothrow_swappable_with (유형의 객체를 동일한 유형 또는 다른 유형의 객체와 교환 할 수 있는지 확인)
is_nothrow_swappable (유형의 개체를 동일한 유형 또는 다른 유형의 객체와 교환 할 수 있는지 확인)
is_invocable (주어진 고체 유형에서 유형을 호출 할 수 있는지 확인하십시오 (std :: invoke)
is_invocable_r (체크 유형은 주어진 고체 매개 변수 유형에서 호출 할 수 있습니다 (예 : std :: invoke))
is_nothrow_invocable (주어진 고체 매개 변수 유형에서 유형을 호출 할 수 있는지 확인하십시오 (예 : std :: invoke)
is_nothrow_invocable_r (주어진 고체 매개 변수 유형에서 유형을 호출 할 수 있습니다 (예 : std :: invoke)
invoke_result
void_t
접속사
disjunch
ndisjunctionegation
Integral_constant
AS_CONST
적용 (단단한 매개 변수로 함수를 호출하십시오)
make_from_tuple
선택 과목
make_optingal (선택 사항 생성)
std :: swap (std :: 옵션) (Specialized Std :: Swap 알고리즘)
std :: hash <std :: optional> (specialized std :: 해시 알고리즘)
NULLOPT_T
BAD_OPTINGAL_ACCESS (선택 사항에 포함되지 않은 옵션의 검사 및 액세스가 있음을 나타냅니다)
NULLOPT (NULLOPT_T 유형 객체)
변형 (유형의 안전한 인식 가능한 컨소시엄)
방문하다
holds_alternative
std :: get (std :: variant) (주어진 색인 또는 유형이있는 변형 값을 읽으려면 (유형이 고유 한 경우) 오류가 잘못되었을 때 이상을 던지십시오).
get_if (인덱스 또는 유형 (만이면)이라면, 파인더가 변형 값을 가리키는 값을 가리키고 오류가 잘못되었을 때 빈 포인터를 반환하십시오).
std :: swap (std :: variant) (Specialized std :: swap 알고리즘)
모노 스테이트
bad_variant_access (불법적으로 변형 가치를 방문했을 때 발생하는 예외)
variant_size
variant_size_v (컴파일시 변형 옵션 목록의 크기)
variant_alternative
variant_alternative_t
std :: hash <std :: variant> (Specialized std :: 해시 알고리즘)
variant_npos
어느
std :: swap (std :: any) (Specialized Std :: Swap 알고리즘)
Any_cast (숙박 시설의 대상 유형에 대한 안전 액세스)
make_any (객체 만들기)
bad_any_cast (유형이 값과 일치하지 않을 때 양식별로 던져진 예외)
to_chars (변환 된 정수 또는 부동 소수점 값으로 문자 시퀀스로)
from_chaars (변환 된 문자 순서로 정수 또는 부동 소수점 값)
chars_format
빈 (컨테이너가 비어 있는지 확인)
데이터
insert_or_assign (삽입 요소 또는 키가 존재하는 경우 현재 요소에 할당됩니다)
try_emplace (키가 존재하지 않으면 제자리에 삽입하십시오. 키가 존재하면 아무것도하지 않습니다).
추출물 (다른 컨테이너에서 출시)
병합 (다른 컨테이너 조인트 노드에서)
insert_or_assign (삽입 요소 또는 키가 존재하는 경우 현재 요소에 값을 할당하십시오)
try_emplace (키가 존재하지 않으면 제자리에 삽입하십시오. 키가 존재하면 아무것도하지 않습니다).
추출물 (다른 컨테이너에서 릴리스 노드)
병합 (다른 컨테이너 조인트 노드에서)
<h5 id = "user-confp_headfile_initializer_list"tabindex = "-1"class = "head