2012-01-24 20 views
0

Google Mockとshared_from_thisにエラーがありますか?私は私のテストでスロー次のエラーを取得してい

私は例外は私が呼んライン上でスローされている見ることができるときの試験1行のステップ実行

unknown file: error: C++ exception with description "tr1::bad_weak_ptr" thrown in the test body.

私はそれのメンバーの一人のオブザーバーとしてのオブジェクトを設定する必要があるため
MyClassSharedPointer myClassPointer(shared_from_this()); 

私は(観察を実現するために、ブースト::信号を使用して)、コードがで実行されているオブジェクトへのポインタを必要とします。コードは正常に実行されている間正常に動作するように見えますが、テストコードからこのエラーが発生します。

答えて

1

Dohの問題は、私のテストコードでは、私が誤って裸のポインタとしてMyClassのオブジェクトを宣言していたのに対し、私の生産コードでのMyClassオブジェクトがshared_ptrのように参照されるということでした。なぜshared_from_this()が働いていなかったのですか?thisは実際にはshared_ptrではありませんでした。

関連する問題