C++面试
Ma_shiro
这个作者很懒,什么都没留下…
展开
-
简述引用和指针的区别
引用是什么引用就是一个变量的别名,其特殊性表现在一个引用在绑定了一个对象之后,就不会再做变化了,在C++中的实际实现为静态指针,而且和指针不一样的地方在于引用不能引用空值而指针可以,因为指针指向的是地址但是引用不能是一个不存在的对象的别名指针是什么指针指向一段内存表示的内容,对指针取地址就能得到指向内存的地址,指针能够改变指向的对象并且可以指向空值...原创 2020-09-23 15:15:53 · 373 阅读 · 0 评论 -
聊一聊多态,虚函数,虚函数表
什么是多态我们接触到的多态被分为静态多态和动态多态静态多态也被称为编译时多态,即在程序编译的时候便绑定了函数动态多态也被称为运行时多态,即可以灵活地进行一个接口,多种方法的调用静态多态表现为运算符重载和函数重载,动态多态则是主要体现在虚函数的使用,虚函数使父类可以用父类的指针指向子类的对象,调用子类的虚函数,这一过程被称为重写(Override),这一过程是怎么实现的呢,我们将引入虚函数表虚函数表我们在构造对象之后,会给这个类赋予一个虚函数表,这个虚函数表占用内存空间,如何访问?根据统一赋予原创 2020-09-15 22:07:11 · 153 阅读 · 0 评论 -
聊聊面试中new与malloc的区别
关于老生常谈的new、delete与malloc、free的区别因为在面试的时候答得不太好,所以我就找了一些资料,想聊聊其中比较有意思的一些点细数他们之间的一些特点非常不意外地,我们在面试地时候被问到的C++问题中对于new与malloc的区别,当然在此我们仅讨论一端的问题,也就是new与malloc的一些相同点与不同点new与malloc的相同点其实,new与malloc都是在堆区由程序员申请的内存,但是他们之间确实存在或多或少的一些区别,不过他们的目的比较明确,都是申请一段空间,接下来我们讨论原创 2020-09-11 17:41:40 · 541 阅读 · 0 评论