12.15 — std::optional

在课程中,我们讨论了函数遇到自身无法合理处理的错误的情况。例如,考虑一个计算并返回值的函数:int doIntDivision(int x, int y) { return x / y; } 如果调用者传入的值在语义上…

B.5 — C++23 简介

什么是 C++23?2023 年 2 月,ISO(国际标准化组织)批准了新版 C++,名为 C++23。C++23 的新改进 为了您的兴趣,这里列出了 C++23 增加的主要变化。请注意,此列表并非详尽无遗,而是旨在突出…

5.6 — Constexpr 变量

在上一课中,我们定义了什么是常量表达式,讨论了为什么常量表达式是理想的,并总结了常量表达式何时在编译时实际求值。在本课中,我们将更深入地了解如何在现代 C++ 中创建可在常量表达式中使用的变量。

6.6 — 条件运算符

运算符符号形式含义条件运算符 ?: c ? x : y 如果条件 c 为真,则计算 x,否则计算 y。条件运算符 (?:)(有时也称为算术 if 运算符)是一个三元运算符(接受 3 个操作数的运算符)。因为它在历史上是 C++ 唯一的…

11.4 — 删除函数

在某些情况下,编写的函数在用某些类型的值调用时,其行为可能与预期不符。考虑以下示例:#include <iostream> void printInt(int x) { std::cout << x << ‘\n’; } int main() { printInt(5); // 正常:打印 5 printInt(‘a’); // 打印 97 — …