编译器如何使用lib文件?

Xin*_*nus 4 c c++ compiler-construction

我很好奇c/c ++编译器如何分析lib文件?我的意思是说我创建了一个包含一些类的库,我在我的主程序中使用该库.编译器如何知道该库中有哪些类名.当然这些信息以二进制格式存在,我想在我的程序中使用该功能,具体来说我有一个二进制lib文件,我想知道该lib文件中存在的所有类和属性/函数.

可能吗 ?如果编译器可以做到那个为什么不能有些库?

谢谢你的任何线索

Bri*_*ndy 6

编译器不会按照您的建议执行操作,但链接器会执行此操作.

编译器从与lib文件相关的头文件中知道所需的信息.

然后,链接器将您包含的声明和lib文件以及其他目标文件放在一起.

例如,可能通过反编译从.lib文件中获取信息,但这是很多工作,可能不是你想要做的.