关注
vector和list的区别:
vector和list是C++中的两种常用容器,它们之间的区别包括:
- 数据存储方式:vector采用连续内存存储,而list采用链表存储。
- 插入和删除操作的效率:对于vector,插入和删除元素在其末尾的效率较高,但在其他位置则比较低效。而list插入和删除元素的效率都比较高,不受位置影响。
- 随机访问的效率:由于vector采用连续内存存储,所以可以通过下标进行随机访问,效率较高。而list只能通过迭代器进行顺序访问,不能进行随机访问。
- 内存分配和管理:vector需要预先分配一块连续的内存空间,而list可以动态地分配和释放节点。
虚函数和纯虚函数:
虚函数(Virtual Function)是在基类中声明的函数,可以在派生类中进行重写,通过基类指针或引用调用时根据对象的实际类型来确定具体调用的函数版本,实现多态性。虚函数需要通过基类的指针或引用来调用,因为动态绑定是在运行时确定的。
纯虚函数(Pure Virtual Function)是一个没有实现的虚函数,在基类中只有函数的声明,没有函数的定义。派生类必须实现纯虚函数,否则派生类也会成为抽象类。纯虚函数用于定义接口,强制派生类实现特定的函数,实现接口的统一性。
继承和多态:
继承(Inheritance)是面向对象编程中的一种机制,允许一个类(派生类)继承另一个类(基类)的属性和方法。继承可以建立类之间的层次关系,派生类可以继承基类的数据和方法,并可以添加自己的特性。
多态(Polymorphism)是实现面向对象编程中的一个重要概念,通过派生类对基类的虚函数进行重写,可以实现不同类型的对象对同一消息的不同响应。多态性可以提高代码的灵活性和可扩展性,通过基类的指针或引用调用虚函数时,根据对象的实际类型来确定调用的函数版本,实现多态行为。
查看原帖
点赞 1
相关推荐
11-15 18:12
北京航空航天大学 算法工程师 点赞 评论 收藏
分享
牛客热帖
正在热议
# 25届秋招总结 #
262121次浏览 2171人参与
# 0offer是寒冬太冷还是我太菜 #
886722次浏览 7906人参与
# 北方华创开奖 #
23601次浏览 260人参与
# 地方国企笔面经互助 #
2823次浏览 7人参与
# 学历or实习经历,哪个更重要 #
43242次浏览 327人参与
# 选完offer后,你后悔学本专业吗 #
13058次浏览 94人参与
# 查收我的offer竞争力报告 #
19166次浏览 251人参与
# 应届生被毁约被毁意向了怎么办 #
28081次浏览 243人参与
# 你最想要的公司福利是? #
41730次浏览 144人参与
# 如何一边实习一边秋招 #
987055次浏览 12609人参与
# 一觉醒来,我觉醒了超级打工人系统 #
3265次浏览 36人参与
# 嵌入式转岗的难度怎么样 #
11184次浏览 250人参与
# 你最希望上岸的公司是? #
76361次浏览 469人参与
# 如何写一份好简历 #
604751次浏览 8502人参与
# 面试体验感最好的是哪家? #
83561次浏览 816人参与
# 机械应届生薪资要多少才合适? #
12532次浏览 61人参与
# 牛客十周岁生日快乐 #
48656次浏览 759人参与
# 你认为第一份工作重要吗 #
5419次浏览 49人参与
# 985本硕1个中小厂offer,摆烂or继续努力 #
79813次浏览 589人参与
# 秋招OC许愿 #
227976次浏览 1878人参与
# 来聊聊机械薪资天花板是哪家 #
65499次浏览 444人参与