我希望我的 Windows 应用程序能够引用包含在 DLL 中的大量类和函数,但我需要能够引导应用程序在加载该 DLL 之前选择正确版本。我熟悉使用 dllexport / dllimport 和生成导入库来完成加载时动态链接,但我似乎无法在互联网上找到任何关于可能在导入库本身中找到某种入口点函数的信息,所以具体来说,我可以使用 CPUID 来检测主机 CPU 配置,并根据该信息决定加载特定的 DLL。更具体地说,我想构建一个 DLL 的 2 个版本,一个是用/ARCH:AVX
并充分利用 SSE - AVX 指令,另一个假设没有比 SSE2 更新的可用指令。
一个要求:要么必须在加载时链接 DLL,要么需要一种超级简单的方法来手动绑定从 DLL 外部引用的函数,并且有很多,主要是封装在类中。
额外问题:由于我的库将是跨平台的,是否有基于 Linux 的共享对象的等价物?