21.y — 第 21 章项目

向读者 Avtem 致敬,感谢他构思并合作完成了这个项目。项目时间 让我们实现经典游戏 15 拼图!在 15 拼图中,您将从一个随机排列的 4×4 拼图块网格开始。其中 15 个拼图块标有数字 1 到 15。一个拼图块缺失。…

5.5 — 常量表达式

在课程中,我们介绍了表达式。默认情况下,表达式在运行时求值。在某些情况下,它们必须如此:std::cin >> x; std::cout << 5 << '\n'; 由于输入和输出无法在编译时执行,因此上述表达式必须在运行时求值。在之前的课程中…

5.3 — 数字系统(十进制、二进制、十六进制和八进制)

作者注:本课为选修课。未来的课程会提及十六进制数,因此在继续学习之前,您至少应该对这个概念有所了解。在日常生活中,我们使用数字计数,其中每个数字可以是 0、1、2、3、4、5、6、7、8 或 9。十进制…

13.13 — 类模板

在课程中,我们介绍了必须为每组不同的类型创建单独的(重载)函数的挑战:#include // 用于计算两个 int 值中较大值的函数 int max(int x, int y) { return (x < y) ? y …

A.4 — C++ 常见问题解答

有些问题往往会被反复问到。本常见问题解答将尝试回答最常见的问题。Q1:为什么不应该使用“using namespace std”?语句 using namespace std; 是一个。using-directive 允许来自给定命名空间的所有标识符…

F.1 — Constexpr 函数

在课程中,我们介绍了 constexpr 关键字,它用于创建编译时(符号)常量。我们还介绍了常量表达式,它们是可以在编译时而不是运行时求值的表达式。常量表达式的一个挑战是,不允许在普通函数中调用函数…