all*_*rry 5 c++ cocoa objective-c openframeworks cinder
我正在考虑学习Objective-C和Cocoa,主要是为了使用Apple的工具和GUI.
但是,我也想做一些图形编程; OpenFrameworks和Cinder是两个引起我注意的库,但后来我们在C++领域.
我来自Java/Swing/Processing背景......对C系列不太了解.如何有效地从本机Cocoa调用Cinder和C++等C和C++库?
并且,奖励积分:这样的解决方案可以在iPhone或iPad上运行吗?
jus*_*tin 12
简而言之,C++适用于OS X和iOS程序,并且可以很好地与Objective-C一起使用.
更详细:
但是,我也想做一些图形编程; OpenFrameworks和Cinder是两个引起我注意的库,但后来我们在C++领域.
我不会直接代表那些图书馆.
用更一般的术语回答你的问题:C++在你的应用程序中很好用,因为C,C++,ObjC和ObjC++是iOS应用程序的一流开发语言.
我来自Java/Swing/Processing背景......对C系列不太了解.如何有效地从本机Cocoa调用Cinder和C++等C和C++库?
Objective-C++允许您在同一个翻译中使用C,C++和Objective-C.您可以根据需要随意使用/组合C++,C或ObjC.编译时间会增加,如果你选择这条路线,会有一些限制*.否则,支持非常好.即使Apple在他们的应用程序/库中使用了大量的C++.
并且,奖励积分:这样的解决方案可以在iPhone或iPad上运行吗?
当然.对iOS和OS X的c ++ 11支持目前有点落后.然而,clang团队一直在非常迅速地增加对它的支持.如果你想要最新的功能,可能会有一些障碍,所以如果你的项目依赖于它,我会说阻止前沿的C++和编译器功能.当然,使用每个版本的最新clang功能对您的程序进行采样并不会有什么坏处,以确定它与您的程序的兼容性.
更新:此时(2011年11月8日)clang几乎可以处理我抛出的所有C++ 2003代码.与GCC + LLVM相比,代码速度和大小确实有所不同.我不想放弃这一点,但两个编译器对我来说都适用于C++ 2003,Apple的GCC不支持c ++ 11,所以现在是开始测试clang的好时机,如果你想要c ++ 11的功能在不远的将来.
*限制:这些都是合理的限制 - 你需要的所有功能都存在,但有一些人们可能期望的东西是不可能的.最常见的可能是无法导出不同对象模型的类型.也就是说,您无法合理地从objc类型创建c ++类型,但您可以在任一对象类型中自由声明多种类型的ivars.
虽然Apple"更喜欢"开发人员使用OpenGL,但可以在iOS应用程序中使用OpenFrameworks和Cinder(参见相关的SO问题:OpenGL ES,OpenFrameworks,Cinder和IOS创意开发).
| 归档时间: |
|
| 查看次数: |
1781 次 |
| 最近记录: |