gpt4 book ai didi

c++ - iPhone 和其他移动设备上 C++ 事件处理的最佳方式

转载 作者:行者123 更新时间:2023-11-28 03:44:56 25 4
gpt4 key购买 nike

我正在编写一个需要进行一些事件处理的 C++ 库。我打算使用 JNI 在 Android 环境中调用它,我也打算从 iPhone 应用程序中调用它。所以我想知道最好的 C++ 库或事件处理解决方案?我想要 MIT 或 BSD 类型的许可证。或者我可以用 Objective-C 编写它并在两种类型的设备上分发?我没有 Mac,所以现在没有 XCode。我需要一个简单的解决方案,没有线程问题,也没有 GPL 等许可证。或者有没有一种方法可以在没有库的情况下轻松地在 native C++ 中执行此操作。我正在寻找这方面的建议。它可能还会做的一件事是连接到 SQLite。谢谢

最佳答案

您可以使用 std::tr1::function 编写一些非常简单的东西。一个事件可以只是一个函数包装器:

#include <tr1/functional>

typedef std::tr1::function<void ()> event;

void my_event_handler()
{
// handler code here
}

class C {
public:
void my_method_handler()
{
// handler code here
}
};

int main(int argc, char* argv[])
{
event ev;
ev = &::handler; // assign an event handler
ev(); // fire an event

// same thing, but using a method as a handler
C c;
ev = std::tr1::bind(&C::my_method_handler, &c);
ev();
}

上面的代码非常可移植,我在 iOS、Android、OSX、Windows 和 cygwin 上运行了类似的东西。

关于c++ - iPhone 和其他移动设备上 C++ 事件处理的最佳方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7949737/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com