0
我有一些cpp文件,我的函数被写入。我想在我的iPhone应用程序中调用该功能?我如何在我的.m文件中调用C++方法?Apple Mach-O链接器(Id)错误:从.m文件调用C++文件时
这里是我的.cpp文件
int add(int a, int b)
{
return a+b;
}
现在在我的viewDidLoad事件我使用下面的代码只是为了获取一个标签的结果和显示器。
NSNumber *n = [[NSNumber alloc] initWithInt:add(5,7)];
[myLabel setText:[NSString stringWithFormat:@"%@",n]];
我收到了以下错误而编译:
Undefined symbols for architecture i386:
"_add", referenced from:
-[usingc__ViewController viewDidLoad] in usingc__ViewController.o
ld: symbol(s) not found for architecture i386
collect2: ld returned 1 exit status
哪里是在代码中的错误?什么编辑是必要的?
谢谢maulik,那工作... – DShah
欢迎您... – Maulik
或者,在这个特定的情况下,把'extern'C''放在'add'的定义之前。尽管如此,我相信Maulik的答案对你可能试图做的事更普遍有用。 –