ポスト
あと、 defer ってオブジェクトにくっつくものではなく関数スコープで制御されるだけのものだし。 C++風疑似コードだとこんな感じ。 void f() { // defer_list のデストラクタで追加と逆順に関数を呼ぶ defer_list l; auto a = open_a(); l.add_defer([&]{ a.close(); }); ... }
メニューを開くみんなのコメント
メニューを開く
Go の defer を無理矢理 C++ で再現するとこんな感じかの。 [C++] gcc HEAD 15.0.0 20240516 (experimental) - Wandbox wandbox.org/permlink/suoWi…