blob: fda7bf10a4d6f247b3989c10e8d7db4be4b50233 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
// Origin: Theo Papadopoulo <Theodore.Papadopoulo@sophia.inria.fr>
template <typename T,double (T::*fun)() const>
struct I {
};
struct R {
R() { }
};
class H: public R {
public:
H(): R() { }
double& f() { return a; }
double f() const { return 1.0; }
double a;
};
struct A {
typedef I<H,&H::f> F;
A() { }
};
|