C++ 버전 확인
이 기사에서는 수년간 C++ 버전을 보여주고 컴파일러에서 사용하는 C++ 표준 버전을 확인하는 방법에 대해 설명합니다.
C++ 프로그래밍 언어는 뉴저지 벨 전화 연구소의 컴퓨터 과학자인 Bjarne Stroustrup에 의해 설계 및 개발되었습니다. 그는 모든 기능을 갖춘 C와 유사한 유연하고 역동적인 언어를 원했습니다.
그러나 활성 유형 검사, 기본 상속, 기본 기능 인수 등의 추가로 C with Classes
(C++)가 출시되었습니다.
C++ 버전
C++의 최신 버전은 C++20입니다. C++17의 보다 새롭고 정교한 버전입니다.
2019년 설문 조사에 따르면 C++는 여전히 Java와 C에 이어 세 번째로 인기 있는 프로그래밍 언어입니다. 모든 크레딧은 C++11 버전으로 돌아가 훨씬 더 강력하고, 더 안전하고, 더 쉽게 액세스할 수 있고, 더 간단하고, 표현력이 뛰어납니다.
수년에 걸쳐 출시된 다양한 C++ 버전은 다음과 같습니다.
C++ 버전 | 설명 |
---|---|
C++98(ISO/IEC 14882:1998) | 1998년 10월에 출시된 C++의 첫 번째 버전입니다. |
C++03(ISO/IEC 14882:2003) | 이 버전의 C++에서 값 초기화는 2003년 2월에 도입되었습니다. |
C++11 | 2011년 8월에 출시되었습니다. 이 수정 버전의 C++에는 Lambda 표현식, 생성자 위임, 균일 초기화 구문, 자동 유형 추론, nullptr , decltype , Rvalue 참조 등이 도입되었습니다. |
C++14 | 2014년 8월에 출시되었습니다. 이 버전에 추가된 기능은 다형성 람다, 숫자 구분 기호, 일반화된 람다 캡처, 변수 템플릿, 이진 정수 리터럴, 인용 문자열 등의 도입입니다. |
C++17 | 2017년 12월에 출시되었습니다. 접기 표현식, 16진수 부동 소수점 리터럴, u8 문자 리터럴, 이니셜라이저가 있는 선택 문, 인라인 변수 등을 도입했습니다. |
C++20 | 2020년 12월에 출시되었습니다. 포함된 몇 가지 새로운 기능: 테스트 매크로 3방향 비교, 연산자 <=> 및 operator==() = default, 새 속성: [[no_unique_address]], [[likely]], [[unlikely]] |
C++ 표준 컴파일러 버전 확인
우리는 때때로 가장 최신의 C++ 표준이 무엇인지 알아야 합니다. __cplusplus
매크로를 사용하여 이러한 유형의 정보를 얻을 수 있습니다.
값은 표준에 따라 다릅니다.
기준 | __cplusplus 출력 |
---|---|
C++ 이전 C++98 | 1 |
C++98 | 199711L |
C++98 + TR1 | 이것은 확인할 수 없으며 C++98로 표시됩니다. |
C++11 | 201103L |
C++14 | 201402L |
C++17 | 201703L |
C++ 버전을 확인하는 프로그램:
#include <iostream>
int main() {
if (__cplusplus == 201703L)
std::cout << "C++17" << endl;
else if (__cplusplus == 201402L)
std::cout << "C++14" << endl;
else if (__cplusplus == 201103L)
std::cout << "C++11" << endl;
else if (__cplusplus == 199711L)
std::cout << "C++98" << endl;
else
std::cout << "pre-standard C++" << endl;
}
출력:
C++98
이 프로그램에서 우리는 C++ 버전이 위의 표에 주어진 각각의 출력과 같은지 확인합니다. cplusplus
결과가 199711L
이었기 때문에 C++98
을 제공합니다.
결론
이 기사에서는 C++ 버전 확인에 대해 논의했습니다. C++ 버전에 대해 자세히 알아보았습니다.
또한 예제를 통해 C++ 버전을 확인하는 개념에 대해 논의했습니다. C++는 1983년에 C++로 이름이 바뀌기 전에 이전에 C with classes
로 알려졌습니다.
++
는 프로그래밍에서 다양성에 1을 더하는 것의 약자이기 때문에 C++는 본질적으로 C보다 하나 더 높음
으로 번역됩니다.