結果 : shared pointer circular dependency