_declspec(dllexport) 또는 _declspec(dllimport) 정적 변수 정의가 여러 개 있는 클래스를 사용하여 첫 번째 변수를 제외한 모든 생성될 C2487 오류가 발생할 수 있습니다. 예를 들어, 이 클래스 선언을 참조하십시오:
class _declspec(dllexport) MyClass
{
public:
static int i,j,k;
};
이 클래스 선언은 이러한 오류가 발생하는 경우를 보여 줍니다.
오류 C2487: 'j': DLL 인터페이스 클래스 멤버는 DLL 인터페이스를 사용하여 선언할 수 없습니다
class _declspec(dllexport) MyClass
{
public:
static int i,j,k;
};
이 클래스 선언은 이러한 오류가 발생하는 경우를 보여 줍니다.
오류 C2487: 'j': DLL 인터페이스 클래스 멤버는 DLL 인터페이스를 사용하여 선언할 수 없습니다
오류 C2487: 'k': DLL 인터페이스 클래스 멤버는 DLL 인터페이스를 사용하여 선언할 수 없습니다
각 정적 변수 선언을 자체 줄로 이동하십시오. 위의 클래스 완전히 컴파일할 수 있도록 문제를 해결하려면 이 사용합니다:
class _declspec(dllexport) MyClass
{
public:
static int i;
static int j;
static int k;
};
각 정적 변수 선언을 자체 줄로 이동하십시오. 위의 클래스 완전히 컴파일할 수 있도록 문제를 해결하려면 이 사용합니다:
class _declspec(dllexport) MyClass
{
public:
static int i;
static int j;
static int k;
};
반응형
'운영체제 & 병렬처리 > DLL_LIB' 카테고리의 다른 글
VS2008에서 dll만들기 (0) | 2012.11.01 |
---|---|
static 멤버 변수를 dllexport 하려면? (0) | 2012.11.01 |
DLL 생성과 익스포트 섹션2 [두번째 방법 : __declspec(dllexport) 지시자 사용방법 ] (0) | 2012.11.01 |
DLL 생성과 익스포트 섹션1 (0) | 2012.11.01 |
함수포인터와 DLL, 함수 포인터를 써야 하는 상황 (0) | 2012.11.01 |