目的:子类对象构造时,区分类型ID
实现:利用模板制作构造工具。
 1 class BaseSystem : entityx::help::NonCopyable {
 2  public:
 3   typedef size_t Family;
 4   static Family family_counter_;
 5 };
 6 
 7 template <typename Derived>
 8 class System : public BaseSystem {
 9  public:
10   // 这里,取得类型ID
11   static Family family() {
12     static Family family = family_counter_++;
13     return family;
14   }
15 };
16 
posted on 2017-07-12 21:40 
长戟十三千 阅读(235) 
评论(0)  编辑 收藏 引用  所属分类: 
编程技巧随笔