C++/CLI 프로젝트에 정의 된 네이티브 클래스의 메서드를 내보내려면 어떻게해야합니까? 여기에 내가 가진 무엇 :C++/CLI 프로젝트에서 네이티브 형식 내보내기
.H 파일을 .cpp 파일
#pragma once
#ifdef COMPILE_PRODUCER_LIB
#define PRODUCER_LIB_EXPORT __declspec(dllexport)
#else
#define PRODUCER_LIB_EXPORT __declspec(dllimport)
#endif
public class PRODUCER_LIB_EXPORT MySecondNativeClass {
public:
MySecondNativeClass(int val);
int getValue() const;
private:
int m_value;
};
:
#include "stdafx.h"
#include "MySecondNativeClass.h"
MySecondNativeClass::MySecondNativeClass(int val) {
this->m_value = val;
}
int MySecondNativeClass::getValue() const {
return this->m_value;
}
같은 프로젝트에서이 클래스를 사용하여 다른 (C에서 사용 잘 작동하지만 ++/CLI) 프로젝트에서 "해결되지 않은 외부 기호"링커 오류가 발생합니다. (COMPILE_PRODUCER_LIB
클래스를 포함하는 프로젝트에서만 정의 된 처리기 정의입니다.) 문제 (this page의 끝에서 다운로드)를 보여줍니다 내가 (비주얼 스튜디오 2010) 작은 솔루션을 만들었습니다
. 거기에 기본 클래스 MySecondNativeClass
은 "ManagedProviderLib"프로젝트에 정의되어 있으며 "ExternalTestClass.cpp"(프로젝트 "ManagedExternalLib")에서 사용되고 있습니다.
C++/CLI 프로젝트에 정의 된 네이티브 클래스의 메서드를 WHERE? 또 다른 C++/Cli 프로젝트? C# 프로젝트? 또는 원시 DLL. –
불만족 스럽습니다. 다른 C++/CLI 프로젝트에서 사용할 수 있도록 내보내기하십시오. –
적어도 "해결되지 않은 외부 기호"링커 오류 또는 둘 이상을 게시 할 수 있습니까? –