2013年11月5日
摘要: 拿程序调用动态库来说:1 预处理: 宏替换、include展开等2 编译:每个.cpp分别编译成.obj文件。obj文件中记录各个符号名,包括当前cpp能确定地址的符号名、将来链接时工程中其他cpp文件来确定地址的符号、运行装在时才能确定地址的调用dll中的符号。 编译过程是:编译器先查找函数名、变量名定义或声明是否存在,先查找当前cpp定义、再到include进来的里面找(预处理后include里的函数声明也在此cpp中),所以动态库的导出函数必须在其头文件声明,需要用到dll的程序要include动态库头文件。都存在就翻译成符号。三个地方都找不到的就报编译错误。最后生成.obj.(至于ob 阅读全文
posted @ 2013-11-05 23:24 Yogurshine 阅读(1413) 评论(0) 推荐(0) 编辑