> 백엔드 개발 > C++ > C 1z 컴파일러에는 어떤 C 17 기능이 구현되어 있습니까?

C 1z 컴파일러에는 어떤 C 17 기능이 구현되어 있습니까?

Susan Sarandon
풀어 주다: 2024-12-26 19:10:12
원래의
654명이 탐색했습니다.

What C  17 Features are Implemented in C  1z Compilers?

C 1z 컴파일러의 C 17 기능

C 17은 이제 기능이 완성되었으며 "C 1z"를 지원하는 컴파일러는 대부분의 기능을 구현합니다. C 17에 추가된 기능. C 1z 컴파일러에서 사용할 수 있는 주요 기능 중 일부 include:

언어 기능:

  • 클래스 템플릿에 대한 템플릿 인수 공제
  • 템플릿
  • Non -type 템플릿 인수 수정
  • 템플릿<템플릿<클래스...>유형 이름 bob> struct foo {}
  • ( 개정판이 있는 ... 식 접기)
  • auto x{8}; int
  • ... 및 목록을 사용하여 현대화

Lambda:

  • Constexpr 람다
  • *이것을 캡처하는 중 람다

속성:

  • [[fallthrough]], [[nodiscard]], [[maybe_unused]] 속성
  • [[속성]] 네임스페이스 및 열거자

구문 정리:

  • 인라인 변수
  • 구조화된 바인딩과 if(init)를 사용하여 더 깔끔한 다중 반환 및 흐름 제어 ; 상태) 구문

데이터 유형:

  • std::variant
  • std::opti onal
  • std::any
  • std::string_view

호출 내용:

  • std::invoke
  • std::apply
  • std::make_from_tuple
  • is_invocable, is_invocable_r 및 Invoke_result

파일 시스템 TS v1:

  • 파일 I/O 관련 클래스 및 함수

알고리즘:

  • for_each_n, Reduce 및 변환_감소

스레딩:

  • std::shared_mutex

라이브러리 기초 TS v1:

  • 알고리즘 및 기법 검색
  • 다형성 할당자(std::pmr)
  • 스플라이싱 및 비멤버 std::size를 포함한 컨테이너 개선

스마트 포인터:

  • unique_ptr 수정

기타 변경 사항:

  • C 17 라이브러리는 C99 대신 C11을 기반으로 합니다
  • 특수 수학 함수
  • std::clamp
  • std::void_t

참고: 정확한 목록은 컴파일러 문서를 참조하세요. 특정 컴파일러에서 지원하는 C 17 기능 중

위 내용은 C 1z 컴파일러에는 어떤 C 17 기능이 구현되어 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿