您的位置:首页 > 其它

如何判断一个模板被实例化了几次?

2014-10-31 16:07 162 查看
突然冒出一个想法,该如何确定一个模板类被实例化了几次?使用一个静态变量进行统计就可以了

#include <iostream>
#include <vector>
using namespace std;

template<typename T,typename pointer>
class Sample{
public:
static int instance_counter;
public:
Sample(){
++instance_counter;
cout<<"instance "<<instance_counter<<" times"<<endl;
}
};

template<typename T,typename pointer>
int Sample<T,pointer>::instance_counter=0;

int _tmain(int argc, _TCHAR* argv[])
{

Sample<int,int *> s1;
Sample<int,int *> s2;
Sample<const int,int *> s3;
Sample<int,const int *>s4;
Sample<const int,const int *> s5;

return 0;
}

结果:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: