C++20

위키백과, 무료 백과사전

C++20C++ 프로그래밍 언어를 위한 표준인 ISO/IEC의 개정판을 지칭하는 비공식적인 이름이다.[1] C++20은 C++17의 후속작이다. 표준 위원회는 C++20 계획을 2017년 7월에 시작했다.[2] 현재 기안은 N4750이다.[3]

아래는 C++20에 추가되기로 제안되었거나 논의된 항목들의 일부이다.[4]

새 기능 후보

2017년 7월에 C++20의 초안에 포함되기로 건의된 항목들:[5]

  • 콘셉트[6]
  • 지정 생성자[7] (designated initializer, C99의 기능 기반)
  • 람다 갈무리(capture)에 [=, this] 사용 가능[8]
  • 람다에서 템플릿 파라미터 리스트 사용[9]

2017년 11월에 열린 가을 회의에서 C++20에 추가하기로 건의된 항목들:[10]

  • 우주선 연산자(operator <=>)를 이용한 세갈래 비교(Three-way comparison)
  • 범위 기반 for문 안에서 추가 변수의 초기화
  • memcpy()보다 덜 장황하면서 컴파일러 내부를 활용할 수 있게 해주는 비트 단위 객체 복사(Bit-casting of object representations)
  • std::shared_ptr를 위한 std::atomic의 특수화
  • 평가되지 않은 콘텍스트에서의 람다[11][12]
  • 생성과 할당이 가능하고 상태가 없는 기본 람다[13]
  • 람다 init-capture에서 pack expansion을 지원[14]
  • 템플릿 파라미터에서 문자열 리터럴 사용 가능[15]

그 외 가능성이 있는 항목들:

라이브러리 변경 후보

  • 어토믹 스마트 포인터[24] (std::atomic_shared_ptrstd::atomic_weak_ptr)
  • 확장된 future[25]
  • 래치와 배리어[26]
  • 네트워킹 확장[27], async, 기본적인 I/O 서비스, 타이머, 버퍼와 버퍼 기반 스트림, 소켓, 인터넷 프로토콜 등
  • 범위(range)[28]
  • 태스크 블록[29]

참조

각주

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.