sairate 4108f6c42d docs(book): 添加现代 C++教程及相关代码
- 新增现代 C++ 教程的 Preface 章节,包括英文和中文版本
- 添加 C++ Primer 练习代码
- 新增 Learn C++ 教程的 C++ 开发简介章节
- 添加头文件解析文档
- 更新 mkdocs.yml,包含新教程的目录结构
- 修改项目设置,使用 Python 3.10环境
2025-07-06 16:14:43 +08:00

33 lines
1.7 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
sort: 5
---
# 语句
## 简单语句
- **表达式语句**:一个表达式末尾加上分号,就变成了表达式语句。
- **空语句**:只有一个单独的分号。
- **复合语句(块)**:用花括号 `{}`包裹起来的语句和声明的序列。一个块就是一个作用域。
## 条件语句
- **悬垂else**dangling else用来描述在嵌套的`if else`语句中,如果`if``else`多时如何处理的问题。C++使用的方法是`else`匹配最近没有配对的`if`
## 迭代语句
- **while**:当不确定到底要迭代多少次时,使用 `while`循环比较合适,比如读取输入的内容。
- **for** `for`语句可以省略掉 `init-statement` `condition``expression`的任何一个;**甚至全部**。
- **范围for** `for (declaration: expression) statement`
## 跳转语句
- **break**`break`语句负责终止离它最近的`while``do while``for`或者`switch`语句,并从这些语句之后的第一条语句开始继续执行。
- **continue**:终止最近的循环中的当前迭代并立即开始下一次迭代。只能在`while``do while``for`循环的内部。
## try语句块和异常处理
- **throw表达式**:异常检测部分使用 `throw`表达式来表示它遇到了无法处理的问题。我们说 `throw`引发 `raise`了异常。
- **try语句块**:以 `try`关键词开始,以一个或多个 `catch`字句结束。 `try`语句块中的代码抛出的异常通常会被某个 `catch`捕获并处理。 `catch`子句也被称为**异常处理代码**。
- **异常类**:用于在 `throw`表达式和相关的 `catch`子句之间传递异常的具体信息。