- 博客(5)
- 资源 (14)
- 收藏
- 关注
原创 用指针做函数参数的好处,
用指针做函数参数的好处, 首先要理解函数传参的过程,函数传参是复制型的,例如 void modify(int a) { a++; } void main() { int a=5; modify(a); printf("%d",a); } 程序执行完之后,a的值还是5,为什么呢,因为在执行modify函数的时候,是另外开辟了存储空间,将a的值复制过去,然后modif...
2015-08-13 10:52:00 732
原创 函数调用的过程是怎么样的
函数调用的过程是怎么样的,什么入栈出栈的, 当在一个函数的运行期间调用另一个函数时,在运行被调用函数之前,系统需要完成三件事, 将所有的实际参数,返回地址等信息传递给被调函数保存, 为被调函数的局部变量(也包括形参)分配存储空间 将控制转移到被调函数的入口, 从被调函数返回到主调函数之前,系统也要完成三件事, 保存被调函数的返回结果, 释放被调函数所占的存储空间...
2015-08-13 10:52:00 633
原创 为什么有时候需要把析构函数定义为虚函数
为什么有时候需要把析构函数定义为虚函数 析构函数的作用是在对象撤销之前做必要的清理现场的工作,当派生类的对象从内存中撤销时一般先调用派生类的析构函数,然后在调用基类的析构函数,但是用new运算符建立了一个派生类对象,并且把他赋给基类指针,那么当用delete运算符撤销这个指针指向的存储空间的时候,系统会只执行基类的析构函数,而不执行派生类的析构函数。只有把析构函数定义为虚函数,...
2015-08-13 10:51:00 67
原创 为什么构造函数不能是虚函数
为什么构造函数不能是虚函数 从存储空间角度看,使用虚函数时,系统要有一定的空间开销,当一个类带有虚函数时,编译系统会为该类构造一个虚函数表(virtual function table),他是一个指针数组,存放每个虚函数的入口地址。然后还会有一个指向虚函数表的指针vptr,这个vptr指针其实是存储在对象的内存空间的,问题出来了,如果构造函数是虚的,就需要通过vtable来调用...
2015-08-13 10:51:00 101
原创 C++是怎么实现多态性的
C++是怎么实现多态性的,C++中多态实现的原理, 当一个类中有虚函数时,系统会为该类构造一个虚函数表vtable,他是一个指针数组,存放每个虚函数的入口地址,编译器还会在此类中隐含插入一个指针vptr指向虚函数表,调用此类的构造函数时,在类的构造函数中,编译器会隐含执行vptr与vtable的关联代码,将vptr指向对应的vtable,将类与此类的虚函数表联系了起来,以后调用虚函数时...
2015-08-13 10:50:00 119
ndjpnladcallmjemlbaebfadecfhkepb.zip
2020-08-04
2020-07-24-21-20-52-download-P3X-OneNote-2020.10.105.AppImage
2020-08-04
pytorch学习视频百度网盘链接.txt
2020-02-23
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人