我的代码是针对多个 .dll 文件构建的,并且我有一个具有静态成员变量的模板类。
我希望这个静态成员变量的同一个实例在所有 dll 中都可用,但它不起作用:我在每个 dll 中看到不同的实例(不同的值)。
当我不使用模板时,没有问题:在其中一个源文件中初始化静态成员,并在类上使用 __declspec(dllexport) 和 __declspec(dllimport) 指令。但它不适用于模板。有什么办法让它工作吗?
我看到了一些使用“extern”的建议解决方案,但我认为我不能使用它,因为我的代码应该适用于 Visual Studio 2002 和 2005。
谢谢你。
澄清:我希望每个不同类型的模板实例都有一个不同的静态变量实例。但是,如果我在 2 个不同的 dll 中实例化具有相同类型的模板,我希望它们都具有相同的变量。