0

我可以以某种方式在 c++ 类成员函数上调用 performSelector 吗?

我正在考虑创建一个虚拟 objc 类,它将接收 performSelector 调用,并且这个虚拟类调用所需的 c++ 成员函数。

但是有更好的方法吗?

(我不想立即调用该方法的原因是因为线程)

4

2 回答 2

1

由于内部结构的根本差异,您不能在 c++ 类实例上调用目标 c 消息(查看 objc_msgSend(),它需要目标 c 运行时)。您可以查看函数指针,或增强诸如bindfunction之类的C++ 库。或者,正如您所说,您可以制作一个包装器,将 obj c 消息作为 c++ 方法调用转发。

于 2011-10-21T13:55:03.523 回答
0

没有好的方法可以做到这一点。我将创建您的 Objective-C 虚拟接收器并从那里调用您的 C++ 类。为了在 C++ 类中接收 UI 事件,我做了同样的事情。

于 2011-10-21T13:54:06.830 回答