摘要:
new和malloc的区别 1、new是运算符,malloc是库函数,需要头文件(#include<stdlib>) 2、new有初始化的功能,malloc没有 3、new和malloc都是申请内存的方式,但内存释放方式不一样,分别是delete和free 4、new返回的是与对象类型匹配的对象指针 阅读全文
摘要:
在面试的时候遇到过这样一个问题,让我有点懵逼 相较之下,我们都知道数组的查询和替换的效率高,而链表的删除和增加效率高 数组查改效率高的原因是数组的内存地址是连续的,所以读取每个元素的时间周期更短、更快(还有一个原因是数组使用的内存是CPU缓存里面的,而链表使用 的是堆空间里面分散的内存,CPU缓存里 阅读全文
摘要:
什么是对象 类就是拥有相等功能和相同的属性的对象的集合 -- 抽象的 对象就是类的实例 -- 具体 举个例子: class A { /* 这里定义一些成员数据和一些操作,但是并没有指定使用这些数据和操作的“人”(实例或对象),所以说类是抽象的 */ } //这里指明了类A的使用对象是obj,是具体的 阅读全文
摘要:
虚函数(实现类的多态性) 这里再解释一下类的多态: 即接口的多种不同实现方式。更直观来说就是同一成员函数让不同的对象使用,可以实现不同的功能。这就是多态。 虚函数的函数调用发生在运行阶段,而不是发生在编译阶段,称为动态联编(动多态)。虚函数的调用需要间接的内存寻址动作,从而使动态联编的效率下降 注意 阅读全文