3

私は最近、Andrei Alexandrescu の 'C++ and Beyond 2012' ( Systematic Error Handling with C++ ) でのトークを見ました。そこで彼は ScopeGuard11 の構成について、具体的にSCOPE_EXIT(トークの第 2 部、または単にコードをここで読む) について説明しています。同時に、Boost ライブラリを調べ始めて、BOOST_SCOPE_EXITマクロ ( Boost.ScopeExit ライブラリ) に気付きました。

これらの 2 つは、実装に関してはまったく異なるようです (BOOST_SCOPE_EXITを使用Boost.TypeOfし、ScopeGuard11 のようなものは何もありませんSCOPE_EXIT)。また、Boost マクロは、C++11 ではあまり問題にならないパラメータ キャプチャなどに関係しています。しかしそれ以上は、基本的に同じ機能を提供しているようです。

私は正しいですか、それとも何か不足していますか? ScopeGuard11 は、Boost.ScopeGuard と同じ機能を備えた「よりクリーンな」メカニズムですが、下位互換性は低いと言えますか?

4

0 に答える 0