当前位置:  开发笔记 > 编程语言 > 正文

使用Objective-C中的.mm文件有什么怪癖/惊喜?

如何解决《使用Objective-C中的.mm文件有什么怪癖/惊喜?》经验,为你挑选了2个好方法。

我想在Objective-C iPhone应用程序中使用一些C++ STL集合.显然,这可以通过为文件提供扩展名".mm"来实现.有什么与此相关的怪癖/惊喜?

我想使用我熟悉的基本容器(矢量,队列,集合......)

干杯!



1> Adam Rosenfi..:

有关您可以做什么和不可以做什么的详细列表,请参阅使用带有Objective-C的C++.你可以做大多数你期望的事情.你不能做像C++类从Objective-C类继承的事情,反之亦然,你不能将C++异常与Objective-C异常混合,而C++引入了几个Objective-C中没有的新关键字.


@noloader:是的,这很不幸.该文章仍可在[archive.org]上找到(http://replay.web.archive.org/20090423073703/http://developer.apple.com/DOCUMENTATION/Cocoa/Conceptual/ObjectiveC/Articles/ocCPlusPlus.html ).看起来Apple刚从"Objective-C 2.0编程语言"文档中完全删除了该章节(以及有关远程消息传递的章节).

2> 小智..:

Objective-C++的主要特点是如果你不将-fobjc-call-cxx-cdtors传递给g ++,它就不会调用ObjC对象中C++实例变量的构造函数和析构函数.所以记得打开那个选项,你应该很好.

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