跳到正文

第 271 课

异常安全

🟣 深入 约 11 分钟

一句话理解

理解三个经典保证:

为什么要学

后面写更大的程序时,异常安全 会反复出现。先在小例子里跑通。

讲解

理解三个经典保证:

No-throw guarantee

绝不抛异常。

Strong guarantee

失败后对象状态保持原样。

Basic guarantee

失败后对象仍合法,但值可能变化。


例子

#include <bits/stdc++.h>
using namespace std;

int main() {
    // 本课:异常安全
    cout << "ok\n";
    return 0;
}

输出:

ok

动手

下面的编辑器就在浏览器里编译运行,不用装本地编译器。改一改数字、再点运行。

练习 做完再看下一课

「异常安全」是 C++ 里值得单独掌握的知识点。

在线练习 C++ 在浏览器里编译,代码不会上传

Ctrl / ⌘ + Enter 运行 · Tab 缩进

输出
 

进度保存在本机浏览器里。

左右方向键也可翻课