- 163 名前:デフォルトの名無しさん mailto:sage [2014/12/26(金) 01:03:55.61 ID:8z4xGjwP]
- >>161
いまVC2013で実装追ってみたけど、平凡だったよ。 shared_ptr<base>のコンストラクタはテンプレートメソッドになっていて、derived* を渡したときは _Ref_count<derived>という型のオブジェクトがnewされてメンバとして設定されてる。 _Ref_count<derived>のデストラクタはもちろんderivedを正しくdeleteできる。 キモは「コンストラクタがテンプレートメソッドになっている」ということだけに見えるがね。
|

|