Cocoa Objective-C++;支持?

Cocoa Objective-C++;支持?,cocoa,objective-c++,Cocoa,Objective C++,我一直在努力学习Objective-C和Cocoa,我觉得使用Objective-C++可能会更好。Objest-C看起来是开发UIS的一个明确的选择,但是我有一个非常强大的C++背景,并且喜欢开发C++中的应用程序后端,并使用ObjtoVC++来完成UI集成。 但我不知道苹果会继续开发Objective-C++还是会成为一条死胡同 有人在使用Objective-C++吗?我使用ObjC++的唯一一次是移植库,使它们可以从我的ObjC代码中访问。ObjC++和ObjC如何处理异常、类创建和销毁等

我一直在努力学习Objective-C和Cocoa,我觉得使用Objective-C++可能会更好。Objest-C看起来是开发UIS的一个明确的选择,但是我有一个非常强大的C++背景,并且喜欢开发C++中的应用程序后端,并使用ObjtoVC++来完成UI集成。 但我不知道苹果会继续开发Objective-C++还是会成为一条死胡同


有人在使用Objective-C++吗?

我使用ObjC++的唯一一次是移植库,使它们可以从我的ObjC代码中访问。ObjC++和ObjC如何处理异常、类创建和销毁等问题之间的冲突让在一个项目中处理这两种语言变得非常头痛


我不认为支持会很快消失,因为COCOA/java是因为它是GCC的一个非常坚实的部分,而且ObjuleC++将编译成直C++的事实与Objto-C可以编译成直C一样,但是,与Objective-C相比,我仍然觉得构建软件的环境不是一个非常舒适的环境,并且不能舒适地充分使用OS X提供的框架。

Objective-C++很可能在Objective-C存在的情况下仍然受到支持。Obj-C++是的基本目标,预计最终将取代gcc成为苹果首选的编译器。随着碳应用转移到可可粉前端,使用量可能会增加


当然,“可能”一词出现在上面两次,因为苹果是如此令人兴奋的不可预测

> P>我怀疑苹果会继续支持目标C++,因为我没有看到苹果需要保持任何明显的重复性来维持目标C++,就像苹果更新COCGA和ObjeC++一样。 <免责声明】:我不为苹果工作或说话,所以这是我的意见:

我不能为主要的DeV商店说话,但是在我的小团队中,我们使用ObjuleC++来集成C++库,并且正如你建议的在C++中编写后端。正如@alxp所提到的,跨语言边界处理异常之类的事情是痛苦的,但只要有一点计划,大部分痛苦都可以避免。对于有经验的C++开发者来说,收益是很值得的。 在支持方面,我认为你可以假设目前的支持不会很快消失。它是GCC代码库的一部分,工具链(苹果下一个编译器工具链)完全支持Objective-C++。另一方面,没有任何官方保证苹果会继续开发集成,例如修复一些缺陷


对于当前的项目,我想说,如果使用Objective-C++能带来好处,那么依赖现有的支持是安全的,您应该使用它。

前几天,当我试图使用Xcode的重构支持重构Objective-C++文件中的一些Objective-C代码时,我感到惊讶。即使菜单项已启用,我仍收到“无法重构Objective-C++代码。Xcode只能重构C和Objective-C代码”错误消息。因此,虽然Objective-C++的编译将无限期地继续运行,但我怀疑Objective-C++将成为Xcode中的二等公民。

我从所有代码中删除了它。没有.mm文件

但是您需要.cpp文件来与.m文件进行通信。解决方案是一个.c/.h文件,它可以保持血脑屏障完整


带有objective-C的C++通常太麻烦了。

objective-C实际上只是一堆用C语言模拟对象的C代码,它仍然使用C编译器,包括objective-C头文件。使用ObjtoVC++使用C++编译器,并包含ObjuleC C标题作为C代码,因为C++将运行C代码。Objto-C++主要是C、C++和ObjuleC(实际上只是C)< /P>。我最近在Opjo中使用ObjuleC++,我发现它非常有利可图。WART的另一个例子:FRET不是关于Objog-C++的支持:有很多C++代码,它比在Office中保持ObjuleC++更有利可图,而不是重写大量代码。几年后,你对Objog-C++的状态有什么看法?加雷特Clang工具链具有出色的Objective-C++支持。我想说我上面的评估仍然有效。Objective-C运行时是。依靠它可能是非常安全的。苹果的几个框架是用C++和ObjuleC++编写的。只需看看AppKit和相关框架中的一些堆栈跟踪。苹果工程师也提到了这一事实,例如在各种WWDC会谈中。只要OSX(和iOS)还活着,Obj-C++肯定不会很快消失——如果有的话。我可能错了,但我认为你不能将Objective-C编译成常规的C代码。那为什么没有Objective C编译器呢。我使用C和Objto-C的GCC编译器,只要我包含目标C标题,G++用于C++和ObjeC++