Visual Studio解决方案:静态或共享项目?

当整个项目(解决方案)由多个子项目(.vcproj)组成时,将它们绑定的最佳方式是什么:作为静态库还是共享库?Visual Studio解决方案:静态或共享项目?

假设这些子项目未在别处使用,共享库方法不应该减少内存使用量或加载时间。

回答:

意见:静态,在几乎所有情况下。

在Windows上的C++中构建跨动态加载库的接口要困难得多。例如,与Unix共享对象不同,您不能为所有模块设置标准单例,因为DLL会拥有自己的一组静态变量。

面向对象的接口通常很难从DLL中导出。

至于加载时间,像rebasing这样的问题需要用共享库来解决。

另一方面,今天您不共享的库可能会在将来共享。但是,在大多数情况下,最好在RAM或磁盘映像中支付重复价格,而不是依赖额外模块的价格。

以上是 Visual Studio解决方案:静态或共享项目? 的全部内容, 来源链接: utcz.com/qa/263865.html

回到顶部