当前位置:  开发笔记 > 前端 > 正文

Objective-C++的支持程度如何?

如何解决《Objective-C++的支持程度如何?》经验,为你挑选了2个好方法。

我一直在通过Hillegass书籍学习Objective-C和Cocoa,我觉得使用Objective-C++可能会更好.Objective-C似乎是开发UI的明确选择,但我有很强的C++背景,并且喜欢用C++开发应用程序后端并使用Objective-C++来进行UI集成.但我想知道Apple是否会继续开发Objective-C++,还是会成为死胡同.

是否有人使用Objective-C++?



1> Barry Wark..:

免责声明:我不为Apple工作或代言,所以这是我的观点:

我不能代表主要的开发商店,但在我的小组中,我们已经使用Objective-C++来集成C++库,并且当你建议用C++编写后端时.正如@alxp所提到的那样,跨越语言边界的异常处理之类的事情是痛苦的,但只要稍加规划,就可以避免大多数这些痛苦.对于经验丰富的C++开发人员来说,收益可能非常值得痛苦.

在支持方面,我认为您可以假设其当前状态的支持不会很快消失.它是GCC代码库的一部分,而Clang工具链(Apple的下一个编译器工具链)完全支持Objective-C++.另一方面,例如,没有任何官方保证Apple会继续开发整合修复一些疣.

对于当前的项目,我想说如果使用Objective-C++提供好处,依靠现有的支持是安全的,你应该使用它.


我最近在我的应用程序中使用了Objective-C++,我发现它非常有利可图.疣的另一个例子:http://www.openradar.me/6411137不关心Objective-C++的支持:http://trac.webkit.org/browser/trunk/WebKit/mac/Storage/WebDatabaseQuotaManager.mm有很多C++代码,在工作级别维护Objective-C++比重写大量代码更有利可图.
Objective-C运行时[部分用Objective-C++编写](http://www.opensource.apple.com/source/objc4/objc4-493.9/runtime/objc-runtime-new.mm).依靠它可能是相当安全的.
@Garet,Clang工具链具有出色的Objective-C++支持.我说上面的评估仍然有效.

2> alxp..:

我使用ObjC++的唯一一次是移植库,以便从我的ObjC代码访问它们.ObjC++和ObjC如何处理异常,类创建和破坏等事情之间的冲突,使得在一个项目中兼顾两种语言变得非常令人头痛.

我不认为支持会像Cocoa/Java那样很快就会消失,因为它是GCC的一部分,而且Objective-C++编译成直接的C++,就像Objective-C可以编译成直接的一样C,但与Objective-C相比,我仍然觉得构建软件并不是一个非常愉快的环境,并且能够轻松地完全使用OS X提供的框架.

推荐阅读
凹凸曼00威威_694
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有