我正在MSDN(here)中阅读有关Windows中不同的CRT库的信息。
据此,msvcrt.lib
是:
用于CRT本机启动的静态库,用于DLL UCRT和vcruntime。
ucrt.lib
是:
用于UCRT的DLL导入库。
这就是为什么ucrt.lib
具有关联的vcrtbase.dll
dll的原因,但是据我对参考文献的理解,msvcrt
没有关联的dll。但是,我可以看到那里有一个msvcrt.dll
,并且它已加载到应用程序中。
所以我的问题很简单,为什么静态库需要dll?也许是因为msvcrt.dll
实际上与msvcrt.lib
相同,但是形式是动态的吗?如果是这样,为什么需要ucrtbase.dll
? (也许是过时的msvcrt
上的表现?)
感谢能溶解雾气的任何见识。