0

我正在编写一个主要是 c++ ios 应用程序。

我正在使用 c++ 3d 引擎和依赖注入库。我知道我必须做一些可可来将 3d 引擎嵌入到视图中,并且我计划使用 Apple api 进行触摸输入。

为了保持最大的跨平台兼容性,我是否应该使用 MVC 方法——一种处理基本视图嵌入和手势的 Cocoa 方法,另一种处理构成应用程序主体的所有交互和数据的 C++ 方法?

是否有一个很好的 C++ MVC 库可以同时处理或非常适合组合。

我对这一切都很陌生。Apple 让使用他们的工具变得很容易,但我真的想保持代码跨平台。

4

2 回答 2

1

Cocoa Touch 是一个 MVC 框架。(我假设你正在做一个 iOS 应用程序)。我认为你会创建一个 UIView 的子类来渲染你的 3d 图像并通过 UIViewController 将 3d 引擎的输入和输出粘合到视图中。

由于我从未将 C++ 与 Objective C 一起使用,因此我无法告诉您这是如何完成的。Objective C 的 Apple 实现不能跨平台移植。您可能必须在库和 Xcode 应用程序之间编写一些 shim 代码并静态链接库。

此外,如果您正在构建一个 iOS 应用程序,那么构建应用程序并将应用程序提交到应用商店有很多细节......

Xcode 文档是您的朋友。

于 2012-07-11T04:40:25.047 回答
1

您不需要 MVC 方法来使代码跨平台。您只需要隔离 iOS API 调用。我建议在您的引擎和 iOS 之间创建一个接口层(该层将被 Android 等取代......)。有桥模式http://www.codeproject.com/Articles/890/Bridge-Pattern-Bridging-the-gap-between-Interface可以解决您的任务。

于 2012-07-11T07:55:32.427 回答