C++의 개요

Outline of C++

다음 개요는 C++의 개요 및 주제 가이드로 제공됩니다.

C++정적으로 입력된 자유 형식의 다중 파라다임 컴파일된 범용 프로그래밍 언어입니다.높은 수준의 [1]언어 기능과 낮은 수준의 언어 기능의 조합으로 구성되어 있어 중급 수준의 언어로 간주됩니다.Bjarne Stroustrup에 의해 1979년부터 Bell Labs에서 C 언어의 향상으로 개발되었습니다.

C++는 어떤 언어입니까?

C++ 는, 다음의 모든 것으로 설명할 수 있습니다.

  • 프로그래밍 언어 - 기계, 특히 컴퓨터에 명령을 전달하도록 설계된 인공 언어입니다.프로그래밍 언어는 기계의 동작을 제어하는 프로그램을 만들거나 알고리즘을 정확하게 표현하기 위해 사용할 수 있습니다.
    • 컴파일 언어 - 컴파일러(소스 코드로부터 머신 코드를 생성하는 변환기)가 아닌 컴파일러(소스 코드로부터 머신 코드를 생성하는 변환기)를 통해 구현되는 프로그래밍 언어.
    • 범용 프로그래밍 언어 - 다양한 응용 프로그램 도메인에서 소프트웨어를 작성하기 위해 설계된 프로그래밍 언어입니다.
    • 중간 언어 - 컴퓨터 프로그램 분석에 도움이 되도록 설계된 추상 기계의 언어입니다.이 용어는 컴파일러에서 사용하는 것에서 유래합니다.컴파일러는 대상 머신의 객체 또는 머신 코드를 생성하기 전의 중간 단계로서 프로그램의 소스 코드를 코드 개선 변환에 보다 적합한 형태로 변환합니다.
    • 객체 지향 프로그래밍 언어 – 데이터를 포함하는 데이터 구조인 "객체"를 기반으로 하는 프로그래밍 언어(속성이라고도 함)와 프로시저 형식의 코드(메서드라고도 함)를 기반으로 합니다.개체의 프로시저는 개체의 데이터 필드에 액세스하고 수정할 수 있습니다.객체 지향 프로그래밍에서 컴퓨터 프로그램은 서로 상호작용하는 객체들로 프로그램들을 만들어 설계된다.
    • 정적으로 입력된 프로그래밍 언어

일반적인 C++ 개념

문제들

C++ 툴 체인

C++ 컴파일러

C++ 라이브러리

C++ 표준 라이브러리

C++ 표준 라이브러리는 C++ 프로그래머가 사용할 수 있도록 C++와 함께 제공되는 유틸리티 모음입니다.여기에는 입력 및 출력, 멀티스레딩, 시간, 정규 표현, 공통 태스크용 알고리즘 및 일반 태스크용 알고리즘(find, for_each, swap 등), 목록, 맵 및 해시 맵(및 세트에 상당) 및 크기 조정 가능한 배열인 벡터라는 클래스가 포함됩니다.다른 많은 기능은 표준 라이브러리에서 제공되지만 주로 위에 구축하여 서드파티 라이브러리를 생성하도록 설계된 형태로 제공됩니다.

기타 주목할 만한 라이브러리

「 」를 참조해 주세요.

C++의 역사

  • C++의 역사
  • C++에 영향을 준 프로그래밍 언어
  • 표준화 이력
    • C++98 — 1998년에 C++ 표준 위원회는 C++를 표준화하고 국제 표준 ISO/IEC 14882:1998(공식적으로는 C++98)을 발표했습니다.
    • C++03
    • C++11 - 2011년 8월 [3]12일 현재 ISO에 의해 승인되어 C++03을 대체합니다.이 이름은 규격이 발행된 연도에 따라 언어 버전을 명명하는 전통에서 유래했습니다.
    • C++14 — 2014년 8월 18일 ISO에 의해 발표된 C++의 가장 최근의 반복으로 C++[4]11이 대체되었습니다.
    • C++17 - 향후 버전사양은 기능이 완료되어 확인 [5]기간으로 들어갑니다.
    • C++20[6]

소스 코드 예시

C++ 출판물

C++에 관한 책

C++에 관한 잡지

  • C++ Report - SIGS Publications Group에서 발행하는 프로페셔널 컴퓨터 매거진입니다.

C++ 퍼스낼리티

C++ 방언

C++ 표준화 위원회는 사투리를 권장하지 않습니다(병렬 프로그래밍의 멀티스레딩과 같은 항목에서와 같이 표준 라이브러리의 새로운 기능으로 문제를 해결하는 것을 선호함). 그러나 여러 가지 이유로 일부 사투리가 생성되었습니다(실장하기 어려운 기능 제거, 프로그램에 대한 응답).동향 등)

  • 프로그래밍 언어 방언 - (상대적으로 작은) 고유한 특성을 변경하지 않는 언어의 변형 또는 확장입니다.
    • Charm++ - C++에 기반한 병렬 객체 지향 프로그래밍 언어이며 일리노이 대학 병렬 프로그래밍 연구소에서 개발되었습니다.Charm++는 병렬 프로그램의 높은 수준의 추상화를 제공하는 동시에 다양한 기반 하드웨어 플랫폼에서 뛰어난 성능을 제공하는 것을 목표로 설계되어 있습니다.
    • 임베디드 C++ - 임베디드 시스템용 C++의 방언. "임베디드 시스템 프로그래머에게 일반 C 프로그래머가 이해하고 사용하기 쉬운 C++의 서브셋을 제공하기 위해 구축되었습니다."[7]
      • 임베디드 시스템 - 제품의 통합 부품으로 임베디드된 설비, 기계 또는 디바이스의 특정 제어 기능을 위해 설계된 컴퓨터 시스템입니다.임베디드 시스템은 오늘날 일반적으로 사용되는 많은 장치를 제어합니다.
  • R++ - 1990년대에 Bell Labs가 C++를 기반으로 개발한 규칙 기반 프로그래밍 언어.
  • C++ 병렬 프로그래밍 시스템 - Codeplay에 의해 설계 및 공개된 C++ 컴파일러 및 병렬 런타임.코드는 멀티프로세서 또는 멀티코어 시스템에서 효율적으로 실행할 수 있도록 코드의 병렬화를 단순화하는 것을 목적으로 합니다.

C++ 언어 확장자

  • AspectC++ - C 및 C++ 언어의 Aspect 지향 확장.
  • C++/CLI - C++용 Managed Extensions를 대체하는 Microsoft 언어 사양입니다.이는 오래된 Managed C++ 구문(현재는 사용되지 않음)을 단순화하는 것을 목적으로 하는 완전한 리비전입니다.C++/CLI는 ECMA-372로 ECMA에 의해 표준화되어 있습니다.현재 Visual Studio 2005, 2008, 2010, 2012, 2013 및 2015(Express Edition에도 포함)에서만 사용할 수 있습니다.
    • 공통 언어 인프라스트럭처 - Microsoft가 개발하고 ISO 및 ECMA에 의해 표준화된 오픈 사양.Microsoft의 핵심을 이루는 실행 가능 코드와 런타임 환경을 기술합니다.NET Framework 및 무료 오픈 소스 구현 Mono 및 Portable입니다.그물.
  • C++/CX - C++ 프로그래머가 새로운 Windows Runtime 플랫폼(WinRT)용 프로그램을 기술할 수 있도록 Microsoft의 C++ 컴파일러 언어 확장자.네이티브 C++프로그래머에게 자연스러운 방법으로 COM 기반의 WinRT 프로그래밍 모델과 인터페이스하는 구문 및 라이브러리 추상화 세트를 가져옵니다.
  • Cilk Plus - C 및 C++ 언어의 멀티스레드 병렬 컴퓨팅 확장.
  • CUDA C/C++ - Nvidia 그래픽 카드를 사용한 병렬 컴퓨팅용 컴파일러 및 확장 기능.
  • [Managed Extensions for C++] : C++ 구문 및 언어를 에 가져오기 위해 문법 및 구문 확장, 키워드 및 속성 등 Microsoft가 C++에서 권장하지 않는 일련의 차이점입니다.NET 프레임워크이러한 확장을 통해 C++ 코드는 관리 코드 형식으로 Common Language Runtime(CLR; 공통 언어 런타임)을 대상으로 할 수 있을 뿐만 아니라 네이티브 코드와 계속 상호 운용할 수 있게 되었습니다.C++/CLI로 대체되었습니다.

「 」를 참조해 주세요.

레퍼런스

  1. ^ http://stroustrup.com/hopl-almost-final.pdf[베어 URL PDF]
  2. ^ Stroustrup, Bjarne (1997). "1". The C++ Programming Language (Third ed.). ISBN 0201889544. OCLC 59193992.
  3. ^ "We have an international standard: C++0x is unanimously approved". 12 August 2011. Retrieved 12 August 2011.
  4. ^ Sutter, Herb (August 18, 2014). "We have C++14!". Retrieved 2014-08-18.
  5. ^ https://herbsutter.com/
  6. ^ https://herbsutter.com/ "C++17 이후의 다음 표준은 C++20이 될 것입니다."
  7. ^ EC++에 관한 질문과 답변

외부 링크