__closure

__closure关键字被用来声明类成员函数的一个特别类型。closure包含有一个对象指针,这不同于一般的C++类成员函数指针。

在标准C++中,你可以将一个继承类的对象赋给基类的指针,然而你不能将一个继承类的成员函数指针赋给基类成员函数指针。

对于两个不同的类也是一样的。

然而,__closure允许你在BCB中这样做。closure将一个成员函数指针和类对象指针关联起来。当使用相关联的成员函数时,

这个类对象指针被作为this指针。closure的声明和函数指针的声明一样,但在声明标识符前有一个__closure关键字。

所以你可以将任何成员函数的指针赋给一个closure,即是:closure允许完全不同的类共享一个函数指针。    

原文地址:https://www.cnblogs.com/geowu/p/4699151.html