C++
文章平均质量分 81
Ko5
这个作者很懒,什么都没留下…
展开
-
C++问题总结
公有继承派生类中的成员函数:可以直接访问基类中的public和protected成员,但不能直接访问基类的private成员;通过派生类的对象:只能访问public成员保护继承派生类中的成员函数:可以直接访问基类中的public和protected成员,但不能直接访问基类的private成员;通过派生类的对象:不能直接访问从基类继承的任何成员。私有继承派生类中的成员函数:可以直接访问基类中的public和protected成员,但不能直接访问基类的private成员;通过派生类的.原创 2021-11-04 10:40:30 · 133 阅读 · 0 评论 -
C/C++区别
C/C++的区别1,函数值的默认值2,函数重载3,inline函数4,引用5,const6,new/delete7,namespace一,函数值的默认值int Sum(int a,int b,int c){ return a+b+c;}int Sum(int a,int b){ return a+b+10;}1,C的函数符号生成规则——函数名(重复)#include<iostream>int Sum(int a,int b,int c=10)原创 2021-06-21 11:14:25 · 158 阅读 · 1 评论 -
函数堆栈调用
函数堆栈调用思考:1,形参开不开辟内存?2,函数调用完成,系统怎么回退到调用方函数?3,函数调用完成,栈帧回退后,系统怎么沿着下一行继续进行?寄存器:eax ebx ecx edx——>存储数据ebp:栈底指针寄存器esp:栈顶指针寄存器pc:下一行指令寄存器(老版)汇编Windows :操作码看完,从右往左看(Linux:操作码看完,从左往右看)用WIndows:移植指令:mov dword prt[a],0ah(将10放在a对应的地址空间4个字节)移地址:lea eax原创 2021-06-15 10:24:25 · 126 阅读 · 0 评论 -
编译链接运行原理(1,2,3)
编译阶段(预编译,编译,汇编,链接)在一个编译单元处理(一个源文件)一,预编译(产生.i文件)1,删除#define并作文本替换2,#include递归展开头文件3,#if,#endif,#elif的处理4,删除注释5,添加行号,文件标识6,保留#prangma二,编译1,词法分析变量:数字,字母,下划线。(数字不能做首字母)2,语法分析3,语义分析4,代码优化5,生成汇编指令三,汇编(生成.o的文件,即目标文件或可重入二进制文件)1,翻译指令a,为什没bss信息不..原创 2021-05-29 10:49:36 · 150 阅读 · 0 评论