C++ 如何在Xcode中使用对象Cpp

C++ 如何在Xcode中使用对象Cpp,c++,ios,objective-c,xcode,cocoa,C++,Ios,Objective C,Xcode,Cocoa,我在Xcode中用3*.m文件(main.m、AppDelegate.m和projectnameTests.m)创建了一个新的cocoa应用程序。 为了使用对象cpp,我将3*.m文件重命名为*.mm文件 然后我从Xcode中得到以下错误: “架构x86_64的未定义符号: “应用程序主”,引用自: _主音中的主音 ld:找不到架构x86_64的符号 叮当声:错误:链接器命令失败,退出代码为1(使用-v查看调用)” 我从未处理过.o文件,所以不确定出了什么问题。 请帮忙 注意:我使用最新的Xco

我在Xcode中用3*.m文件(main.m、AppDelegate.m和projectnameTests.m)创建了一个新的cocoa应用程序。 为了使用对象cpp,我将3*.m文件重命名为*.mm文件

然后我从Xcode中得到以下错误:

“架构x86_64的未定义符号: “应用程序主”,引用自: _主音中的主音 ld:找不到架构x86_64的符号 叮当声:错误:链接器命令失败,退出代码为1(使用-v查看调用)”

我从未处理过.o文件,所以不确定出了什么问题。 请帮忙


注意:我使用最新的Xcode版本(6.1.1)。

将AppKit.framework添加到项目目标构建阶段下的“链接二进制文件与库”部分,这将解决问题


另外,请不要问我为什么XCode会自动为.m文件找到必要的框架(即AppKit.framework),而不是为.mm文件,但是添加AppKit.framework可以解决这个问题,因为NSApplicationMain是在AppKit中定义的。添加COOA.Frror也会修复这个问题,可能是因为它触发XCODE自动与AppKest.Frase.E/P>链接。您只需要更改您将要写入C++代码的文件。将main.m文件改回单个m。感谢您的回复。我知道。我应该只将main.m更改为main.mm以使用对象cpp。但我想知道是什么导致了这个错误。我想你误解了。您不应该将main.m文件更改为.mm。只有你要写C++代码的文件才能被修改。你怎么知道的,我永远都不会知道。太棒了。我绞尽脑汁想了一个小时才找到你的答案。这一切都始于我想将AppDelegate.m重命名为AppDelegate.mm.救生答案!