10.2 — 浮点和整数提升
在课程中,我们提到 C++ 对每种基本类型都有最小尺寸保证。然而,这些类型的实际大小可能因编译器和架构而异。允许这种可变性是为了让 int 和 double 数据类型可以设置为其大小...
在课程中,我们提到 C++ 对每种基本类型都有最小尺寸保证。然而,这些类型的实际大小可能因编译器和架构而异。允许这种可变性是为了让 int 和 double 数据类型可以设置为其大小...
在课程中,我们讨论了语法错误,当您编写的代码不符合 C++ 语言的语法时就会发生这种错误。编译器会通知您此类错误,因此它们很容易发现,通常也很容易修复。我们还讨论了语义错误,这些错误...
本章将介绍的最后一类流程控制语句是终止。终止是终止程序的流程控制语句。在 C++ 中,终止以函数(而非关键字)的形式实现,因此我们的终止语句将是函数调用。让我们简要绕道,回顾一下...
本课将继续我们在上一课中开始的对 switch 语句的探索。在上一课中,我们提到标签下的每组语句都应以 break 语句或 return 语句结尾。在本课中,我们将探讨原因,并讨论一些...
本课是课程的延续。在本课中,我们将介绍使用 if 语句时出现的一些常见问题。嵌套 if 语句和悬空 else 问题 可以将 if 语句嵌套在其他 if 语句中: #include <iostream> int main() { std::cout << “输入一个数字:...
(感谢读者 Koe 提供了本课的初稿!)在课程中,我们介绍了 std::move,它将其左值参数转换为右值,以便我们可以调用移动语义。在课程中,我们介绍了 noexcept 异常说明符和运算符。本课基于两者构建...
(感谢读者 Koe 提供了本课的初稿!)查看典型的函数声明,无法确定函数是否可能抛出异常: int doSomething(); // 这个函数会抛出异常吗?在上面的例子中,doSomething() 会...
恭喜!你又完成了一章。你所获得的关于结构体的知识将在我们学习 C++ 最重要的主题——类时非常有用!结构体(也称为)是我们可以在自己的程序中创建的自定义类型。枚举类型和类...
C++ 支持两种命名空间变体,至少值得了解。我们不会以此为基础,所以目前可以将本课视为可选。无名(匿名)命名空间 无名(也称为)命名空间是没有名称的命名空间,如下所示: #include <iostream> namespace // 无名命名空间...