模板全特化和偏特化用法
#include <iostream>
template <typename T, typename U>
class TC
{
public:
?? ?TC()
?? ?{
?? ??? ?std::cout << "泛化版本構造函數(shù)" << std::endl;
?? ?}
?? ?void funtest()
?? ?{
?? ??? ?std::cout << "泛化版本成員函數(shù)" << std::endl;
?? ?}
?? ?void display()
?? ?{
?? ??? ?std::cout << "泛化版本成員函數(shù)" << std::endl;
?? ?}
};
template<>
class TC<int, int>
{
public:
?? ?TC()
?? ?{
?? ??? ?std::cout << "全特化版本構造函數(shù)" << std::endl;
?? ?}
?? ?void funtest()
?? ?{
?? ??? ?std::cout << "全特化版本成員函數(shù)" << std::endl;
?? ?}
};
//函數(shù)全特化
template<>
void TC<double, double>::funtest()
{
?? ?std::cout << "全特化版本函數(shù)" << std::endl;
}
template<>
void TC<float, float>::display()
{
?? ?std::cout << "全特化版本函數(shù)" << std::endl;
}
int main()
{
?? ?TC<int, int> tint;
?? ?tint.funtest();
?? ?TC<float, float>ints;
?? ?ints.display();
}
總結
以上是生活随笔為你收集整理的模板全特化和偏特化用法的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: CentOS 7 利用Docker搭建
- 下一篇: Git报错: OpenSSL SSL_c