boost::signals::trackable
Boost.Signals を使用する場合、オブジェクト/接続の有効期間の管理を容易にするために、boost から派生させることができます( boost のドキュメントを参照してください)。
私はプロジェクトの初期段階にあり、から派生するかどうかを考えていboost::signals::trackable
ます
- 将来 Boost.Signals を使用する可能性がある、私が作成するすべての新しいクラス
trackable
またはクラスでのみ、基本クラスの機能が必要になると確信しています
最初のアプローチの主な理由は、 からの導出を忘れないようにするためですboost::signals::trackable
。
また、次のような二重導出
class Foo : public Base, public boost::signals::trackable
{
};
不要になる。
一方で、メモリ リークを防止することは設計上の主要な側面であってはなりません。valgrind などのテストおよびプロファイリング ツールを使用して、メモリ リークを検出する必要があります。
成長するプロジェクトに適しているアプローチはどれですか?