把成员函数转换为函数的代码。

xiaoxiao2021-02-28  93

对于成员中的函数,在没有this的时候我们无法运行,但是有些标准库算法需要这些函数。因此,有了成员函数适配器。

 

大体思路:

 

类提供了一个在外部访问成员函数的接口:

 

void (A::*f)();

 

但是,由于这个函数需要this来调用,因此在外部无法使用。

 

标准库提供的方法是:

 

将这个东西作为参数传给另外一个函数,而另外一个函数呢则提供了指针,用来执行这个函数,设另外一个函数为g

 

。。。。OK:

 

关键问题是。。成员函数必须由THIS来调用,而THIS的出现必须在构造之后。。。。。。。。。。。。

 

 

所以很麻烦。。。

 

 

转载请注明原文地址: https://www.6miu.com/read-72593.html

最新回复(0)