以一个普通函数模板为例:
template <typename A, typename B>
void f(A a, B b) {
}
template <typename A>
void f(A a, int b) {
} //这个写法有点奇怪,我认为这里是重载,跟偏特化有迷惑性
void f(char a, int b) {
} //普通的函数
template <>
void f(char a, int b) {
} //这跟上面的f是同一个意思,不属于全特化
template <>
void f<char,int>(