一上上面的声明

求助一下下面的声明我看到别人的代码,templatetypename T, typename Pclass abcT (*)(P){public:abc()

求助一下下面的声明
我看到别人的代码,

template<typename T, typename P>  
class abc<T (*)(P)>  
{  
public:  
abc()  
{  
printf("partial spec\r\n");  
}  
};  
请问这是什么意思呢T (*)(P),这个模板类的类型为什么连在一起?
后面的代码是用
abc<void* (*)(int)> f_abc; 特化了一个类,但是意思是什么不明白。

[解决办法]
T(*)(P)是函数指针类型,那个偏特化的意思是所有只有一个形参的函数的指针都使用这个实例。

楼主还是应该先学好模板基础,这些东西自然就明白了。