typedef yaneuraoGameSDK3rd::YTL::smart_ptr yane_ptr;
typedef boost::shared_ptr boost_ptr

・メモリ効率
インスタンス自体のサイズを一般的な環境でのワード数で比較
yane_ptr → 5
boost_ptr → 2
また、yane_ptrは仮想関数を持つポリモーフィック型であるが、
boost_ptrはそうではない。

・例外安全性
yane_ptr → 例外発生時の保証は、おそらく無い。(実装自体が発生させる例外に対してすら無い)
boost_ptr → strong guarantee

・yene_ptrを使いたくない個人的な意見
自分の実装が発生させる例外に対して安全性を考慮していない人のコードなんか信用できない。
非publicなメンバが全てprotectedメンバなのはおかしい。
所有権の有り無しがフラグによって選べるのは危険なだけ。不要。
配列を格納するならstd::vectorのほうがいい。
配列関連のサポートすべて不要。