2009年5月11日月曜日

メンバ関数で自分自身のshared_ptrを得る

こんな便利な機能があるなんて知りませんでしたよ。
これを知らずにboost::shared_ptr使ってきてたことが、ある意味頑張ってたのかも。

1.38.0の実装では、メンバ変数にweak_ptrを持たせているので、x86だと4バイトのサイズ増加。
このメンバ変数はthisに対するshared_ptrを作成した時に、shared_ptrのコンストラクタで初期化されている。

enable_shared_from_this.hppのコメントに、

「コードじゃなくてドキュメントを読め」

と書いてあって、ちょっと笑えた。

0 件のコメント:

コメントを投稿