模板类特殊化

模板类特殊化
#include  < cstdio >
#include 
< cstdlib >
#include 
< iostream >
using   namespace  std;

template
< typename T >
class  Example {
    
public:
        T data;
    
public:
        Example(T _data):data(_data)
{cout<<"Initial data="<<data<<endl;}
        
void print(){cout<<"print data:"<<data<<endl;}
}
;

template
<>
class  Example < double > {
    
public:
        
double data;
    
public:
        Example(
double _data):data(_data){cout<<"Special Initial data="<<data<<endl;}
        
void print(){cout<<"Special print data:"<<data<<endl;}
}
;

int  main() {
    Example
<int> e_int(5);
    e_int.print();
    
    Example
<double> e_double(1.2);
    e_double.print();
    
    system(
"PAUSE");
    
return 0;
}
 

你可能感兴趣的:(模板类特殊化)