我使用 iphone SDK 并主要在 C++ 中进行编码,同时在 obj-c 中使用部分 SDK。在需要 obj-c 类的情况下是否可以指定 C++ 类?例如:
1) 将委托设置为 obj-c 对象时。
- 我不能让 C++ 类从 Delegate 协议派生,所以这个以及可能的其他原因阻止我让我的 C++ 类成为各种 obj-c 对象的委托。我作为解决方案所做的是创建一个包含指向 C++ 类的 ptr 并用作委托的 obj-c 适配器类(在调用它时通知 C++ 类)。每次我需要将委托通知发送给 C++ 类时,编写这些感觉很麻烦。
2) 设置选择器时
- 这与第 1 项密切相关。假设我想设置一个回调以在完成某些操作时触发,例如按下按钮或 UIView 动画功能中的 setAnimationDidStopSelector。如果能够为 setAnimationDelegate 指定一个 C++ 函数以及相关委托,那就太好了。
好吧,我怀疑这不太可能,但如果有人对如何做到这一点有任何建议,或者如何更容易地编写这些东西,我很想听听他们的意见。谢谢。