>>569
569をちょっと変えてLoki::TypeInfoを使うってのは?
Loki::TypeInfoはstd::type_infoをコンテナに格納できるようにするラッパです.
#include <loki/LokiTypeInfo.h>
using namespace std;
class CBase {
static map<Loki::TypeInfo, int> count_map;
public:
virtual void add_count() {count_map[Loki::TypeInfo (typeid(*this))]++;}
virtual void sub_count() {count_map[Loki::TypeInfo (typeid(*this))]++;}
virtual int get_count() {return count_map[Loki::TypeInfo (typeid(*this))];}
virtual ~CBase() {this->sub_count();}
};
class CDerivedA: public CBase {};
class CDerivedB: public CBase {};
map<Loki::TypeInfo, int> CBase::count_map;