@Quark_Hell
C++ программист

Почему я получаю «unresolved external symbol»?

Моему классу из DLL необходимо иметь статичные пременные.Однако,при попытке их использовать, я получаю ошибку LNK2001.

Вот часть моего кода:

.h
extern "C" GRAPHICLIBRARY_API int SizeX;

extern "C" GRAPHICLIBRARY_API int SizeY;

extern "C" GRAPHICLIBRARY_API vector<string> Screen;


.cpp
static class ScreenClass {
public:
    __declspec(dllexport) static int SizeX;
public:
    __declspec(dllexport) static int SizeY;

public:
    __declspec(dllexport) static vector<string> Screen;

public:
    __declspec(dllexport) static bool InitializeScreen(int sizeX,int sizeY) {

//Ошибка ссылается на строки ниже:

        ScreenClass::SizeX = sizeX; 
        ScreenClass::SizeY = sizeY; 

        ScreenClass::Screen.clear(); 
//.......
       }
}


Заранее спасибо за помощь.
  • Вопрос задан
  • 49 просмотров
Пригласить эксперта
Ответы на вопрос 1
jcmvbkbc
@jcmvbkbc
http://dilbert.com/strip/1998-08-24
extern "C" GRAPHICLIBRARY_API int SizeX;
extern "C" GRAPHICLIBRARY_API int SizeY;

//Ошибка ссылается на строки ниже:

ScreenClass::SizeX = sizeX;
ScreenClass::SizeY = sizeY;

Разницу в регистре видишь?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы