blob: e5748f56c14ed373a38dc6137b23c3ca18552ce6 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
template <class T>
void f(T t);
template <class T>
void f(T* t);
template <>
void f(int* ip) {}
struct S1
{
template <class T>
void f(T t);
template <class T>
void f(T* t);
};
template <>
void S1::f(int* ip) {}
template <class U>
struct S2
{
template <class T>
void f(T t);
template <class T>
void f(T* t);
};
template <>
template <>
void S2<double>::f(int* ip) {}
int main()
{
int* ip;
S1 s1;
s1.f(ip);
S2<double> s2;
s2.f(ip);
}
|