달력

52024  이전 다음

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31

00. C++ 11 제정

2011년 8월 12일에 ISO c++표준 위원회의 만장일치로 통과, 그동안 C++0x 등으로 불

렸으나 표준으로 인정받은 해에 맞춰 기술하는 원칙에 따라 C++11이라는 정식 명칭으

로 탄생


01.C++11의 특징

  • 안정성 및 C++98과의 호환성 유지
  • 핵심 언어의 확자오다는 표준 라이브러리를 이용한 새로운 기능 추가
  • 프로그래밍 기술을 발전시킬 변화 선호
  • 특정 애플리케이션에서만 유용한 새로운 기술 보다는 시스템 라이브러리 디자인에

     유용하게 C++를 개선

  • 이전의 안전하지 않은 기술에 대해 좀더 안전한 대안을 제공
  • 성능 향상과 하드웨어 직접 조작 능력 강화
  • 실 세계의 문제를 해결할 수 있는 해법 제시
  • '부담 최소화'의 원칙 (어떤 유틸리티가 필요로하는 추가적인 자원은 그 유틸리티를

     사용할 때만 필요해야 함)

  • 전문 프로그래머가 필요로 하는 어떤 유틸리티도 제거하지 않고도, 쉽게 가르치거

     나 배울 수 있어야 함.


02. 문법의 편의성이 크게 향상

  • 템플릿에서 가변 인자
  • 새로운 문자열 리터럴
  • 사용자 정의 리터럴
  • 멀티태스킹 메모리 모델
  • TLS (Thread-Local-Storage)
  • 특수 멤버 함수의 기본값 사용 및 삭제에 대한 명시적 표시
  • long long int 타입
  • 정적 assertion
  • 멤버에 대한 sizeof 허용


03. C++ 컴파일러

  • GCC

현재 C++를 가장 완벽하게 지원하는 컴파일러.

  • MSVC (MS Visual C++)

C++11/14/17 Feature In VS 2015 Preview

  • LLVM과 CLang

LLVM은 원래 다양한 프로그래밍 언어의 정적/동적 컴파일러 집합과 도구를 마들

어내는 오픈소스 프로젝트로 시작 Clang은 LLVM 컴파일러 컴포넌트를 기반으로

해 C, C++, Objective-C, Objective-C++ 프로그래밍 언어를 지원하기 위한 컴파

일러 프론트엔드, GCC 프론트 엔드보다 빠르고, 메모리 소모가 적으며 에러메시

지가 명확하다는 특징이 있음. 애플이 주도하며 구글에서도 C++를 사용할때

LLVM에 기반을 둔 Clang을 사용하길 권장, Xcode에 포함.

'karma( 업 ) > C_C++' 카테고리의 다른 글

09. std::tuple( C++11로 가자 )  (0) 2018.11.01
02. 범위기반 for문( C++11으로 가자 )  (0) 2018.11.01
01. auto( C++11으로 가자 )  (0) 2018.11.01
C++11으로...  (0) 2018.11.01
Endian Check  (0) 2016.09.12
Posted by 생짜
|