回答編集履歴

2

追記

2019/04/20 13:31

投稿

episteme
episteme

スコア16614

test CHANGED
@@ -59,3 +59,39 @@
59
59
  }
60
60
 
61
61
  ```
62
+
63
+ [追記2]
64
+
65
+ ```C++
66
+
67
+ #include <iostream>
68
+
69
+
70
+
71
+ class test {
72
+
73
+ public:
74
+
75
+ using tp = void(test::*)();
76
+
77
+ test() { t = &test::print; }
78
+
79
+ void print() { std::cout << "test::print\n"; }
80
+
81
+ tp t;
82
+
83
+ };
84
+
85
+
86
+
87
+ int main() {
88
+
89
+ test a;
90
+
91
+ test::tp x = a.t;
92
+
93
+ (a.*(x))();
94
+
95
+ }
96
+
97
+ ```

1

追記

2019/04/20 13:31

投稿

episteme
episteme

スコア16614

test CHANGED
@@ -21,3 +21,41 @@
21
21
  tp t = &test::print;
22
22
 
23
23
  ```
24
+
25
+ [追記]
26
+
27
+ ```C++
28
+
29
+ #include <iostream>
30
+
31
+ class test;
32
+
33
+ using tp = void(test::*)();
34
+
35
+
36
+
37
+ class test {
38
+
39
+ public:
40
+
41
+ test() { t = &test::print; }
42
+
43
+ void print() { std::cout << "test::print\n"; }
44
+
45
+ tp t;
46
+
47
+ };
48
+
49
+
50
+
51
+ int main() {
52
+
53
+ test a;
54
+
55
+ tp x = a.t;
56
+
57
+ (a.*(x))();
58
+
59
+ }
60
+
61
+ ```