官术网_书友最值得收藏!

  • Expert C++
  • Vardan Grigoryan Shunguang Wu
  • 241字
  • 2021-06-24 16:33:52

More C++20 features

C++20 is a new big release of the C++ language. It contains many features that make the language more complex and flexible. Concepts, ranges, and coroutines are some of the many features that will be discussed throughout the book.

One of the most anticipated features is modules, which provide the ability to declare modules and export types and values within those modules. You can consider modules an improved version of header files with the now redundant include-guards. We'll cover C++20 modules in this chapter.

Besides notable features added in C++20, there is a list of other features that we will discuss throughout the book:

  • The spaceship operator: operator<=>(). The verbosity of operator overloading can now be controlled by leveraging operator<=>().
  • constexpr conquers more and more space in the language. C++20 now has the consteval function, constexpr std::vector and std::string, and many more.
  • Math constants, such as std::number::pi and std::number::log2e.
  • Major updates to the Thread library, including stop tokens and joining threads.
  • The iterator concepts.
  • Move-only views and other features.

To better understand some new features and also dive into the essence of the language, we will introduce the language's core starting from previous versions. This will help us to find better uses for new features compared to older ones, and will also help in supporting legacy C++ code. Let's now start by gaining an understanding of the C++ application building-process.

主站蜘蛛池模板: 武夷山市| 新竹县| 西乌珠穆沁旗| 西宁市| 米林县| 大渡口区| 钟祥市| 铜陵市| 兴安盟| 墨江| 罗甸县| 高尔夫| 新和县| 万源市| 进贤县| 苍梧县| 上虞市| 石屏县| 郸城县| 沧州市| 海南省| 克拉玛依市| 从化市| 会理县| 镇江市| 绩溪县| 平乐县| 盐源县| 普定县| 尼木县| 郯城县| 北碚区| 合江县| 湾仔区| 水城县| 乐昌市| 治县。| 会同县| 贞丰县| 安溪县| 勃利县|