为了支持通用编程,C ++有模板。但是因为模板纯粹是一个编译时构造(就像C ++中的其他任何东西一样),所以看起来在尝试在dll中使用它们没什么意义。
我们想说我们要创建一个包含许多模板化函数的数学库。只要此库与应用程序静态链接,我们就可以了。你可以争辩
我们也可以将dll
静态链接到应用程序(前提是您可以访问源文件或目标文件),但大多数时候我们只想使用dll(通过LoadLibrary
加载它并使用。调用特定的函数
GetProcAddress
)
那么,上述意味着我们是否真的可以在dll中使用模板(如果它们是在外部使用的话)?什么是(如果有的话)替代品,除了静态库?