繁体   English   中英

如何在XCode中使用带有Objective-C的C ++

[英]How can I use C++ with Objective-C in XCode

我想在Objective-C中使用/重用C ++对象。 我有一个具有类定义的hello.h和用于类实现的hello.cpp。

class Hello
{ int getX() ... };

我在Objective-C函数中使用这个类。

#include "hello.h"
...
- (IBAction) adderTwo:(id)sender
{
    Hello *hi = new Hello();            
    int value = hi->getX();
    NSLog(@"Hello %d", value);
    [textField setIntValue:value];

当我在Xcode中编译代码时,我收到此错误消息。

class Hello *XXXXX
Users/smcho/Desktop/cocoa/adderTwo/hello.h:9:0
/Users/smcho/Desktop/cocoa/adderTwo/hello.h:9: 
error: expected '=', ',', ';', 'asm' or '__attribute__' before 'Hello'

什么地方出了错?

确保将该文件编译为“Objective-C ++”。

最简单的方法是将其重命名为* .mm

如果您不想重命名* .m文件,

  1. 选择你的文件。
  2. 打开“文件信息”对话框(Cmd + I)
  3. 在“文件类型”中,选择“sourcecode.cpp.objcpp”

将Objective.C文件从filename.m重命名为filename.mm ,使其编译为Objective-C ++。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM