我有一个像
class K {
static int a;
static int b;
}
我想创建一个包含此类的共享库 (dll) K
。在我调用的库中编译的 cpp 文件中
int K::a = 0;
int K::b = 0;
实例化静态变量。dll 确实编译没有错误,但是当我使用该库时,我得到了成员的未解决的外部符号错误K::a
和K::b
. 在我想使用它的主程序中,我在 class 的声明中包含相同的头文件K
,唯一的区别是我使用的库 class __declspec( dllexport ) K { ... }
和主程序class K { ... }
可能我犯了不止一个错误,所以我的问题是,我怎么能
- 告诉链接器共享库中的静态成员类?
- 在主程序中使用库中实例化的静态类成员?
PS。我使用 Visual Studio 2008...