我尝试在我的 DLL 文件中添加函数模板以使工作更容易,但到目前为止未能这样做,即使我尝试将函数模板放在 DLL 头中,它仍然无法工作,编译器总是给我烦人的未解决每当我尝试在其他程序中使用 DLL 时出现外部符号错误(Visual Studio)。
无论如何在 DLL 中使用函数模板(我知道我可以简单地将所有函数模板放在一个独立的头文件而不是 DLL 中,但这会使程序维护变得一团糟)。
我想在 DLL 中做的是:
template<typename T>int foo(T*x){...};
然后像这样称呼它:
fooINT(int* x){ return foo<int>(x);};
DLL可以编译,但它总是会给我错误:
__declspec(dllimport) 的未解析外部符号
每当 Visual Studio 使用调用此 DLL 的程序编译时。