C++23 Standard (c++ Standard Manual) 202310 Official latest edition PDF+CHM

C++23 Chinese Reference Manual

  • Book size: 16.5MB
  • Book language: Simplified Chinese
  • Book type: Domestic software
  • Book licensing: Freeware
  • Book category: C/C++
  • Application platform: PDF
  • Updated: 2024-05-07
  • Buy Link: JD Asynchronous community
  • Netizen rating:
360 pass Tencent through Jinshan pass

detailedInformation introduction

Version 2023 of the C++23 standard will be a very complete update to the C++ language, introducing new features to the language. The c++23 standard documentation is the latest official document, updated 2023. C++23 is the informal name for the next version of the C++ programming language, the ISO/IEC 14882 standard, after C++20. Need friends can download to try!

The C++ Reference Manual covers C++11, C++14, C++17, C++20, C++23, C++26, and includes a PDF of the final draft of the C++23 version.

New C++23 features

Deducing this Deducing this is one of the most important features in C++23, which was supported by msvc in March of last year and is available after v19.32. What Deducing this does is provide a way to change the "implicit object argument" of a non-static member function into an "explicit object argument". Why only for non-static member functions? Since the static member function does not have a this pointer, the implicit object argument is not equal to the this pointer, and the static function has an implicit object argument only to ensure that the overloaded resolution will work properly. Feature 2: Monadic std::optional (P0798R8) P0798 proposes to add three new member functions for std::optional: map(), and_then(), and or_else(). These functions are as follows: map() : Applies a function to the value in optional and returns optional with the result of the application. If there is no value in optional, an empty optional is returned. and_then() : combines a function that returns optional with the current optional. or_else() : If there is a value in optional, return it directly, otherwise call the passed function to handle the error. In R2, map() was renamed transform(), so the actual three new functions are transform(), and_then(), and or_else(). The main purpose of these functions is to avoid manually checking whether the optional value is valid. 3, Feature 3: std::expected (P0323) This feature is designed to address error handling issues and introduces a new header file . The logical relation of error handling is A conditional relation, that is, if the condition is true, logic A is executed; Otherwise, logic B is executed and an accurate error message is required to take appropriate action. The most common way is to use error codes or exceptions, but these methods still have many inconveniences. std::expected represents the expectation and is equivalent to the combination of std::variant and std::optional, which can retain either T (the expected type) or E (the wrong type), with an interface similar to std::optional. 4. Feature 4: Multidimensional Arrays (P2128) This feature is used to access multidimensional arrays. Previously, C++ 's operator[] only supported access to a single index, not to multidimensional arrays. So, to access a multidimensional array, the old approach was to override operator() and then use m(1,2) to access the elements in row 1 and column 2. However, this approach is easily confused with function calls; Override operator[] with std::initializer_list as an argument, and then you can access the element using m[{1,2}]. However, this approach seems strange; Chain operator[], and then you can access the element using m[1][2]. Again, this is an odd way. It is also inconvenient to define an at() member function and then use at(1,2) to access the element. 5. Feature 5: if consteval (P1938) This feature relates to the immediate function, that is, the consteval function. Its purpose is to solve the simple problem that in C++20, a consteval function can call a constexpr function, but not the other way around. 6. Feature Six: out_ptr(P1132r8) C++23 introduces two new abstract types, std::out_ptr_t and std::inout_ptr_t, along with corresponding functions std::out_ptr() and std::inout_ptr(), for easy handling of pointer arguments. ...

Under theCarry address

Download error? 【 Error reporting 】

C++23 Standard (c++ Standard Manual) 202310 Official latest edition PDF+CHM

      peoplePneumatic book

      Under thestatement

      ☉ Unpack password: www.jb51.net is the main domain name of this site, I hope you see clearly, [share code access method] can refer to this article ☉ recommend the use of [thunder] download, the use of [WinRAR v5] more than the version to decompress the site software. ☉ If this software is always unable to download please leave a comment, we will fix as soon as possible, thank you! ☉ Download the resources of this site, if the server can not download please try again for some time! Or try a few download address ☉ If you encounter any problems, please leave a comment, we will solve the problem, thank you for your support! Some of the commercial software provided by this site is for study and research purposes. If it is used for commercial purposes, please purchase the legitimate version. The C++23 standard (c++ Standard Manual) 202310 official latest version PDF+CHM resources available on this site are sourced from the Internet, and the copyright is owned by the legal owner of the downloaded resources.