天天看点

模板函数/类不能导出到动态链接库(DLL)

该文章转自http://hi.baidu.com/htvhsztnrubhxze/item/f98427fd02fd2718e3e3bd79

模板函数在声明的时候, 其实并不存在,函数地址也就无从谈起了,而导出到动态链接库的函数都需要有地址,也就是说——函数模板不具备导出的基本条件。

函数模板在调用时后,有了具体的实现,这个时候才有了地址。 如果要导出,必须将参数类型列表具体化,比如说,有这么一个模板:

template

void fn1(T1 testValue1,T2 testValue2)

{

}
           

将参数列表具体化

template __declspec(dllexport) void fn1(int testValue1,char* testValue2)
{
}
           

继续阅读