Есть статическая библиотека smartdb.lib
Вот её заголовочный файл
#include "database.h"
#include <string.h>
#include <stdlib.h>
#ifdef SMARTDB_EXPORTS
#define SMARTDB_DLL_ENTRY __declspec(dllexport)
#else
#define SMARTDB_DLL_ENTRY __declspec(dllimport)
#endif
class SMARTDB_DLL_ENTRY dbvField;
class SMARTDB_DLL_ENTRY dbvRecord;
class SMARTDB_DLL_ENTRY dbvTable;
class SMARTDB_DLL_ENTRY dbDatabase;
Экспортируются все эти классы. Но когда я хочу запустить конструктор какого нибудь класса выдает ошибку линкера. Но самое странное, что нет проблем с классом dbDatabase. В нем работают все функции. Скажите пожалуйста почему одни классы могут грузится,а другие нет. Может это в параметрах проекта настроить или...
Ещё странный момент. Если я размещаю файл с имплементацией всех его функций в заголовочный файл, то функции видны... Вобщем, полностью запутался.
Да, вот файловая структура библиотеки:
[smartdb.h]
|
[database.h]-[database.cpp]
|
[class.h]-[class.cpp]
Заранее благодарю.
23.08.05 15:03: Перенесено модератором из 'C/C++' — Хитрик Денис