auto mfp = &C::foo;
auto c = new C();
(c->*mfp)(1);
C++
是在调用点
确定对象
.d
版本是这样:
auto c = new C();
auto dg = &c.foo;
dg(1);
然后,是在定义点
确定.d
要实现c++
版,这样:
auto mfp = function(C self, int i) { return self.foo(i); };
auto c = new C();
mfp(c, 1);
也是调用点确定了.