《C++ Primer》知识点总结
树图思维导图提供 《C++ Primer》知识点总结(一) 在线思维导图免费制作,点击“编辑”按钮,可对 《C++ Primer》知识点总结(一) 进行在线思维导图编辑,本思维导图属于思维导图模板主题,文件编号是:6a013947cd516db6f4cc0c7f4a310399
《C++ Primer》知识点总结(一)思维导图模板大纲
源代码(source coprede)→预处理器(processor)→编译器(compiler)→汇编程序(assembler)→目标程序(object code)→链接器(Linker)→可执行程序(executables)
预处理
读取C/C++源程序,对其中的伪指令(以#开头的指令)进行处理
删除所有的注释
添加行号和文件名标识
保留所有的#pragma编译器指令
编译
将预处理完的文件进行一系列词法分析、语法分析、语义分析及优化后,产生相应的汇编代码文件
汇编
将编译完的汇编代码文件翻译成机器指令,并生成可重定位目标程序的.o文件,该文件为二进制文件,字节编码是机器指令
链接
通过链接器将一个个目标文件(或许还会有库文件)链接在一起生成一个完整的可执行程序
将生成的.obj文件与库文件.lib等文件链接,生成可执行文件(.exe文件)
windows下
.dll:动态链接库,作为共享函数库的可执行文件
.obj: 对象文件,相当于源代码对应的二进制文件,未经重定位
.lib: 可理解为多个obj的集合,本质与.obj相同
linux下
.so:(share object)动态链接库,跟Windows平台类似
.o: 对象文件,相当于源代码对应的二进制文件
.a: 与.o类似,多个.o的集合
C和C++的一个区别
c++的编程思想是面向对象,而c的编程思想是面向过程
优点
程序结构简单(仅由顺序、选择、循环构成)
分而治之,逐个击破
自顶向下,逐步求精
缺点
数据和操作往往是分离的(数据结构发生变化,操作的函数不得不重新改写)
数据往往不具有封装性,变量暴露在全局
万般皆对象:面向对象程序设计
多态、继承、封装
面向对象思想认为
优点
容易设计和实现
复用设计和代码,开发效率和系统质量都得到了提高
容易扩展
安全性高
树图思维导图提供 《C++ Primer》知识点总结(五) 在线思维导图免费制作,点击“编辑”按钮,可对 《C++ Primer》知识点总结(五) 进行在线思维导图编辑,本思维导图属于思维导图模板主题,文件编号是:5725866dfdc79fd02c7c7625ad607eb3
树图思维导图提供 《C++ Primer》知识点总结(四) 在线思维导图免费制作,点击“编辑”按钮,可对 《C++ Primer》知识点总结(四) 进行在线思维导图编辑,本思维导图属于思维导图模板主题,文件编号是:57ac5d02c24062bf3cf3a47efbd20348