FSF GCC merge 02/23/03
[official-gcc.git] / gcc / testsuite / g++.old-deja / g++.jason / pmem2.C
blobd34809cb3e12da4a0cf1eef0ff422f0e33503f1a
1 template <class Called>
2 class aCallback
4 public:
5   aCallback(Called& obj, int (Called::*met)());
7   int callback();
8   
9 protected:
11 private:
12   Called&       object;
13   
14   int (Called::*method)();
15   
18 template <class Called>
19 aCallback<Called>::aCallback(Called& obj,
20                              int (Called::*met)()) :
21 object(obj),
22 method(met)
25 template <class Called>
26 int aCallback<Called>::callback()
28   return (object.*method)();
31 struct myStruct
33   int action() {return 0;};
36 int main()
38   myStruct toto;
40   aCallback<myStruct>   cb(toto, &myStruct::action);
42   return cb.callback();