У меня есть файлы 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: команда компоновщика не выполнена с кодом выхода 1 (используйте -v, чтобы увидеть вызов).
Может ли кто-нибудь сказать мне, что является правильным способом вызова функции?
Отредактировано название, так как оно было чрезвычайно вводило в заблуждение. Кроме того, я бы рекомендовал переименовать свой класс «С» в нечто более наглядное. –