Since std::function
可以保存成员函数,因此它必须在某处存储指向对象实例的指针。
我怎样才能获取this
来自 a 的指针std::function
拥有成员函数?
类型的对象std::function
持有一个可调用对象。指向成员函数的指针是一种可调用对象;可以使用适当的类类型的参数以及它需要的任何其他参数来调用它。例如:
struct S {
void f(int);
};
std::function<void(S, int)> g(&S::f);
要调用它,请传递一个类型的对象S
:
S s;
g(s, 3);
请注意,std::function
对象确实not持有S
目的;只有当您调用它时,函数指针才会绑定到对象。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)