Iphone 目标-C++;语言:我在哪里可以找到更多关于它的信息? 我学习C++已有几个月了,发现它是一门优秀的语言,尽管它有很多优点。

Iphone 目标-C++;语言:我在哪里可以找到更多关于它的信息? 我学习C++已有几个月了,发现它是一门优秀的语言,尽管它有很多优点。,iphone,programming-languages,macos,objective-c++,Iphone,Programming Languages,Macos,Objective C++,我想知道所谓的Objective-C++到底是什么,是否值得学习它作为针对苹果环境(如Mac OS X、iPhone OS)的主要开发语言。在网上搜索时,我只找到了几篇好文章:主要是和一篇来自 维基百科说: Objul-C++是GNU编译器集合的前端,它可以编译使用C++和ObjaveC语法的源文件。Objto-C++增加了C++的扩展对象Objy-C添加到C. Mac开发中心的文章补充道: 苹果的Objto-C编译器允许你在同一个源文件中自由混合C++和Objtovi-C代码。这种Objec

我想知道所谓的Objective-C++到底是什么,是否值得学习它作为针对苹果环境(如Mac OS X、iPhone OS)的主要开发语言。在网上搜索时,我只找到了几篇好文章:主要是和一篇来自

维基百科说:

Objul-C++是GNU编译器集合的前端,它可以编译使用C++和ObjaveC语法的源文件。Objto-C++增加了C++的扩展对象Objy-C添加到C.

Mac开发中心的文章补充道:

苹果的Objto-C编译器允许你在同一个源文件中自由混合C++和Objtovi-C代码。这种Objective-C/C++混合语言称为Objective-C++。使用它,您可以利用Objy-C应用程序中现有的C++库。 苹果的文章称Objective-C++为一种语言。是这样吗

我想知道以下几点:

  • 在不了解C/Objective-C的情况下学习和使用Objective-C++是否可能
  • 是否有任何好书、网站、论坛等可以获得更多信息和/或帮助
  • 据你所知,有没有用Objective-C++完成的大型项目

  • ObjultC++是真正的Objy-C与C++的混合。由于它允许从这两种语言中使用语法,您可以说它是一种新语言

    <>我主要使用Objc++(.mm源文件),当我必须与ObjtoC代码和一些C++库接口时。在这种情况下,调用C++是方便的。就我个人而言,我不知道很多人实际上是混合了C++和Objul-C./P>< P>1)我怀疑它,因为他们每个人都是C语言的超集。 我不认为Objul-C++是一种全新的语言。它只是一个混合,这给了你一些额外的可能性——即重用现有的C++代码,或者在更多的时间关键代码段中使用更快的C++,或者使用没有ObjuleC/COCOA接口的C++代码(主要是与硬件相关的低级内容,如串口/ IOCTLS、OpenGL……)/P> 2) 我认为关于这一主题的资源是


    3) 通过。。。我的意思是你认为什么大?我只是从一堆项目(可能不是所有项目都是商业项目,因为你可以在商店里买到软件)中了解到,使用这种组合的原因如1所示。

    很多大型项目都使用Objective-C++。例如,Camino、Chromium和Firefox都是包含Objective-C++的实质性开源项目。

    是的,当你想开发具有竞争力的苹果应用程序时,你应该学习Objective-C++(又名非常好,人们愿意为此付费)

    在同一个文件中,ObjuleC和C++组合实际上没有别的。

    对于Objective-C,请使用数百个流行的苹果开发博客/邮件列表/新闻组中的任意一个。尤其是苹果公司直接提供的

    对于C++,这是一样的,有很多博客/邮件列表/入门教程。但是,虽然C及其Objective-C附加组件非常简单,如果您已经理解了编程,那么就很容易学习。C++是一种完全不同的复杂的野兽。找几本好书并学习它(10年后你将能够完全理解语言:-)但是你可以用这个知识的一小部分写C++程序。 当你可以用Objto-C逃走时,为什么你应该使用C++。答案很简单。除了明显的提到的现有C++库的包装外,Objest-C是缓慢的,首先是方法调用。通常的adivse是在方法中做一些严肃的事情,以避免这种在这种语言中出现的运行时惩罚

    <> p>但对于容器来说,你应该考虑使用C++模板。向量比NSArray快得多。如果你的数据集很大,你会感觉到不同。我还发现C++容器更容易使用,因为它们避免了与Objtovi.C./P>相关的类型化。 对于iPad和iPhone上的慢ARM CPU,这不是过早的优化

    不幸的是,你不能混合C++和COCOA类,因此C++只能用于算法数据。对于GUI,必须使用Cocoa和Objective-C类


    C++和ObjuleC之间的平衡是苹果程序员需要开发的技能的一部分。p> OBJECTIVE-C++

    Objto-C是ANSI C. <强> >代码> ObjultC++<代码>的一组小扩展,是与C++应用相同的扩展集。苹果的Objective-C编译器也是Objective-C++编译器。

    Objective-C的优点之一是,作为ANSI C的一个超集,它可以很容易地与世界上数百万行现有的C代码混合苹果的编译器将扩展名为.M或.mm的文件视为Objective-C++源代码。此外,–x编译器选项可用于指示苹果的编译器将任何输入文件视为Objective-C++源代码。

    苹果的在线文档介绍了Objective-C++at的功能和限制,以及苹果开发工具附带的发行说明。通常,Objto-C类和C++类可以混合,这样Objto-C方法可以调用C++成员函数,反之亦然,或者C++类可以包含指向Objto-C对象的指针作为成员变量。目标-C