2015-01-19から1日間の記事一覧
GCC拡張のcleanup attribute使えば簡単にscope_exit文を作れそうだな、と思って作ってみた。ネスト関数のプロトタイプ関数に使うautoとか初めて使った。 #include <stdio.h> #define scope_exit() \ auto void on_scope_exit(void *ptr);\ __attribute__((cleanup(on_</stdio.h>…
C言語でデストラクタ及びスマートポインタを実装した人が居るらしい。何というタイミング。GCC拡張のcleanup attributeを使っているので、使い道は少なそう。それと、メモリをスタックからじゃなくてヒープから取得してるのが気になる。[C] Implementing sma…