加载中...
C++面试初级卷
{{ brief.revision === 1 ? "初版" : `第${brief.revision}版` }}
技术
·
计算机软件
·
初级C++软件工程师
课程缩略

收集了国内外大量C++面试技术题,将其中相对初级(包含部分中级)的题目收集到本课程,并给出本人的解答,以供参考。

题图

初级题目的范畴

挑选、整理网上可搜索到的一些C++面试技术题。题目来自国内外或大或小、或出名或不出名的软件企业的面试题,小部分来自我的个人创作(我个人有超过十年的C++程序员招聘经历)。依据题目涉及的范畴和难度,分为初级和中高级两辑,本课程是其中的 “初级” 课程。

初级课程的C++面试题都和 C++ 语言紧密相关,大部分是 C++ 语言知识点,小部分是“面向对象”一类的编程思维,还有一小部分是使用C++实现数据结构或算法。涉及特定专业领域,如:网络、操作系统、安全、数据库等,不会在本课程出现。

问题来自收集,答案则全部由本人回答,供学习者参考。

简单的题目,很重要!

网上不少面试题来自“大厂”,大厂条件好,面试者多,因此面试题的难度自然就大。然而,以大学毕业上岗为例,过往的数据表明,国内各大厂每年消化的计算机编程相关专业毕业生,不会超过 5% 。受近几年经济发展相对变慢的大形势影响,这个比例只会更低。因此,我建议大多数C++学习者,如果一时无法进入 “5%”,可以花更多一些时间,放在国内遍地开发的中小软件企业。

中小软件企业面试和大厂面试,有一些不同

由于许多现成的,一眼就能看出的编程好手,在校招等阶段就被大企业招收了,所以无论是在客观必要性上,还是在主观意愿上,中小企业都会投入更多精力与技巧,用于发现、挖掘好苗子。这时候使用的面试题,不一定很难,但一定能通过题目,考察到面试者对语言的基础是否扎实,关键理解是否正确。这些就是看似简单,但其实不简单的题目。各位切莫掉以轻心,毕竟,难的题同做错,面试官可能还会给你机会,看似简单的题目做错,通常就没机会了。

答不出的题目?不用害怕

由于软件编程行业的“卷”,所以归入本课程的不少题目,按理说一点也不初级……所以,学习者遇上自己一时无法掌握的题目,不用因此产生自我怀疑或太受打击。请认真学习课程给出的解答;仍有不懂的,可在网上搜索更多解答,还可在本站课堂上向老师提问。

包含课文
课文缩略
友元增强了类的封装性,而非破坏
{{ parseTime('2023-06-05T14:34:00+08:00') }}
课文缩略
腾讯、字节等公司C++岗面试虚函数相关基础题
{{ parseTime('2023-06-06T19:08:18+08:00') }}
课文缩略
从语义、到语法、再到实现层面上理解虚函数机制
{{ parseTime('2023-07-03T13:36:12+08:00') }}
课文缩略
纯虚函数,C++中的“接口/interface”概念
{{ parseTime('2023-07-05T13:00:50+08:00') }}
课文缩略
override:有效避免程序员“手误”
{{ parseTime('2023-07-12T17:21:09+08:00') }}
课文缩略
派生类对象和基类对象,各有各的死法
{{ parseTime('2023-07-20T16:29:12+08:00') }}
课文缩略
为什么没有虚的构造函数?以及构造或析构过程为什么最好不要调用虚函数?
{{ parseTime('2023-09-28T15:23:32+08:00') }}