3種類の例外安全性

関数の例外安全性には、以下の3種類がある。

資源解放保証((「資源解放保証」「原子性保証」「無送出保証」っていう言葉は
bold;">いま勝手に作りました、すいません。Exceptional C++ などでは「弱い保証」「強い保証」「投げない保証」と呼ばれていますが、「強い」「弱い」が曖昧で分かりにくいのと「投げない」が漢字じゃないのが嫌だったので。)):例外が送出された場合でも、その関数呼び出しはリソースリークを起こさない。
原子性保証
例外が送出された場合、その関数呼び出しは何の変化ももたらさない。
無送出保証
その関数は決して例外を送出しない。

それぞれの意味を正しく理解して、堅牢なプログラムを書けないといけない。