Top Qs
Chronologie
Chat
Contexte

C++23

De Wikipédia, l'encyclopédie libre

Remove ads

C++23 est une version de la norme ISO/IEC 14882 définissant le langage de programmation C++ qui suit la version C++20[1]. La norme a été finalisée par le WG21 lors de la réunion à Issaquah en février 2023[2]. Le dernier working draft gratuit est le N4950, qui date du [3].

Faits en bref

Fonctionnalités

Résumé
Contexte

Les modifications qui ont été acceptées pour inclusion dans C++23 incluent :

Langage

  • if consteval[4]
  • opérateur d'indexation [] multidimensionnel (par exemple v[1, 3, 7] = 42;)[5]
  • opérateurs d'appel () et d'indexation [] statiques et lambdas statiques[6],[7]
  • auto(x) et auto{x}[8]
  • nouvelles directives de préprocesseur :
    • #elifdef et #elifndef[9]
    • #warning[10]
  • extension de la durée de vie de certaines temporaires dans les boucles for range-based[11]
  • nouvel attribut standard [[assume(expression)]][12]
  • déduction des arguments de classe template depuis les constructeurs hérités[13]
  • labels à la fin d'un bloc d'instructions[14]
  • déclaration d'alias dans les init-statements[15]
  • suffixes littéraux uz et z pour std::size_t et std::ssize_t[16]
  • types flottants étendus std::float16_t, std::float32_t, std::float64_t, std::float128_t, std::bfloat16_t[17]
  • () facultatif pour les expressions lambdas nullaires[18]
  • attributs sur les expressions lambdas[19]
  • modifications de constexpr :
    • variables non-littérales, labels, et gotos dans les fonctions constexpr[20]
    • variables static et thread_local dans les fonctions constexpr[21]
    • les fonctions constexpr n'ont plus besoin que leur type de retour et leurs types de paramètres soient des types littéraux
  • réduction des conversions contextuelles vers bool dans les static_assert et if constexpr[22]
  • suppression des espaces avant la jonction des lignes[23]
  • séquences d'échappement délimitées[24]
  • caractères d'échappement universels nommés[25]
  • modifications de l'encodage du texte :
    • prise en charge de l'UTF-8 comme encodage de fichier source portable[26]
    • encodage cohérent des caractères littéraux[27]
    • jeux de caractères et encodages[28]

Bibliothèque

Remove ads

Références

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads