0
我有C++文件:C.cpp和Ch如何调用C++方法在Objective-C
//C.h
#ifndef __ThreeMoreOpenCV__SourceC__
#define __ThreeMoreOpenCV__SourceC__
#include <iostream>
class C
{
public:
static void Cmethod();
};
#endif
//C.cpp
#include "SourceC.h"
using namespace std;
void Cmethod()
{
printf("ff");
}
我也有Wrapper.h/.mm
//Wrapper.h
#import <Foundation/Foundation.h>
@interface CVWrapper : NSObject
+(void)returnCmethod;
@end
//Wrapper.mm
#import "Wrapper.h"
#import "C.h"
@implementation CVWrapper
+(void)returnCmethod
{
C::Cmethod();
}
@end
我不知道但我发现了一个错误,如:
“C :: Cmethod()”,从引用: + [包装returnCmethod]在Wrapper.o LD:符号(多个)未找到i386硬件架构 铛:埃罗r:linker命令失败,退出代码1(使用-v查看调用)。
有人可以告诉我什么是调用函数的正确方法吗?
编辑标题,因为这是极其错误的。另外,我建议重新命名你的'C'类来描述更具描述性的内容。 – 2013-03-24 20:11:00