比方说,如果.dll或.lib是用C语言编写的,它可以被其他语言使用,比如PHP / Python吗?
答案 0 :(得分:1)
DLL是二进制的。只要您的语言可以使用二进制库(使用二进制文件编译的操作系统),您应该没问题(请参阅下面的例外情况)。 LIB文件用于编译器,因此您只能在编译时使用C / C ++语言。
此例外是.NET和COM。 .NET生成特殊的程序集DLL,供其他.NET语言(C#,VB.NET,C ++ / CLI,IronPython等)使用。 COM也会生成特殊的DLL,其中组件(专用类)通过DLL公开。本地,C ++和VB6支持COM。 .NET语言可以通过互操作访问COM DLL。许多其他语言也通过各种方式支持COM绑定。
转到here进行有关此主题的讨论以及有关差异的更多详细信息。