“互联网企业每一年校招的技术面试形式相似,大可能是对面试者技术基础的考察。本文面对C++后台开发岗位,收集总结了百余道技术基础题。供你们学习和准备。 ”c++
文 | Amazing10面试
c++具备哪些特色和性质,和c有什么区别
指针的做用
全局变量的缺点
c++对象的生命周期
c和C++中动态分配内存是怎样实现
为何建议多用组合少用继承
编译语言和解释语言的区别
面对对象的思想,还有什么其它编程思想
多态是什么,有哪几种
doule 和float二进制怎么存的,double 1.5 和 float 1.5 的大小
c++的对象模型(内存模型,虚函数表,虚函数指针)
有没有了解智能指针
dynamic_cast有什么用
智能指针shared_ptr,循环引用的状况怎么办,weak_ptr的弱引用什么意思
野指针是什么
lambda函数
rand函数须要注意什么
c++模板
static关键字
常量指针与指针常量
函数参数传常引用和普通函数参数
内存泄漏缘由及如何避免
深拷贝和浅拷贝
右值引用
虚表
全部类都有虚表吗
C++是单继承仍是多继承,菱形继承的问题,为何虚继承能解决
强制类型转换,static_cast和dynamic_cast的区别,为何dynamic_cast可以向上向下转
RTTI的底层实现原理,如何动态得到类型,怎么判断指针对象的继承关系
函数重载?有什么用?怎么实现的?为何不能用返回值不一样函数名形参列表相同作重载呢?
重载和重写
结构体和类的区别
拷贝构造和移动构造
什么状况下必须使用拷贝构造函数
内存堆栈对比,分配效率
全局变量放哪儿
碎片会出如今哪内存区域
malloc底层实现
volatile做用,寄存器
new和malloc的区别
delete的几种方式
面向对象的特色
子类和父类在构造和析构的时候有什么特色吗,顺序
基类的析构函数,不是虚函数会形成什么问题
纯虚函数和虚函数的区别
引用的做用
常引用
结构体和联合体,对联合不一样成员赋值,其它的值会改变吗
c++是类型安全的吗
const和define的区别,哪一种更好
指针和数组的区别
全局变量和局部变量的区别,操做系统和编译器是怎么知道的
标准模板库,哪些数据结构,怎么分类
迭代器
何时用vector和list,实现的方案
STL vector扩容怎么实现
STL中map和unordered_map的区别,两种map的底层实现算法
设计模式原则
单例模式的线程安全实现
观察者模式
代理模式
为何要采用工厂模式,策略模式,必定要用吗编程
常见排序算法及其复杂度,哪些稳定和非稳定
快速排序为何随机选初始值
建堆的过程及建堆后如何排序
快速排序和归并排序的过程
数据结构知道哪些,对比下数组和链表
链表的做用
红黑树和平衡二叉搜索树
哈希表
哈希冲突解决办法
如何判断图的连通性
堆和栈的区别
b+树设计模式
Linux经常使用命令,查看系统负载状况,查看端口号,端口号被占用怎么办
如何查看服务器运行时间?看是否有重启和宕机?
Linux系统的gdb调试
Linux查看进程的命令
ping一个ip发生了什么
锁的概念
如何避免死锁
进程和线程的区别
线程同步的方式,读写锁
进程间的通讯方式
多线程中对A,B同时加锁的时候,须要注意什么问题(死锁的状况)
如何避免死锁
epoll和select区别,水平触发和边沿触发
Reactor模式,调度器、工做线程和请求队列都会干什么,状态发生什么改变
单进程如何进行IO复用
epoll的单线程
select的实现须要多线程吗
虚拟内存和物理内存
为何用多线程,不一样线程共享栈吗
软中断何时发生
僵尸进程、孤儿进程
操做系统复制粘贴如何实现
页面置换算法
进程调度算法
线程池怎么实现数组
TCP的TIME_WAIT 和CLOST_WAIT
time_wait 和close_wait,客户端断开链接了,服务器会怎样
TCP的可靠性,超时重传怎么实现
UDP和TCP对比
http状态码
HTTP和HTTPS
HTTPS加密过程
非对称加密和对称加密算法
代理
udp的限制,udp是有序仍是无序
输入一个URL,回车后直到渲染出页面中间发生了什么?(dns是属于TCP仍是UDP)
tcp三次握手
session和cookie的区别
get和post的区别
滑动窗口
ARP协议,描述一下原理
路由器和交换机分别在什么层安全
手写LRU页面置换算法
手写最小堆
从n个数中抽m个出来,按从大到大输出全部排列组合
改编的约瑟夫环问题
计算化学分子式每一个元素的个数,如HMg2(H2O(P2S3))3NH3,每一个元素以大写字母开头
链表操做,奇数位递增,偶数为递减,从新排序为递增
链表每隔k个反转
实现 void memmove(void dst, const void* src, size_t n)
N个数重复3次,一个数重复一次,请找到这个数; 3N+1, int32_t, vector<int32_t>
实现一下string类,包括构造函数,拷贝构造函数,析构函数,运算符重载等
一颗多叉树,实现层序遍历以及元素赋值操做
手写快排服务器
如何看待加班现象
手机的指纹识别是如何实现的?
抽奖箱设计,三种颜色A,B,C,要求每种颜色的权重(几率)分别为1:10:100,怎么产生三种颜色
两个文件有上亿个qq号,找重复的
大量qq号存储、查询和查重
1-n,缺失了一个数,找到这个数
假设内存不够,相加溢出,怎么办cookie
如何看待加班现象
不作技术转什么方向
看过什么书,看过什么库
意向城市
有没有了解显卡
课余时间都在干什么
学科课程比较突出的
在项目中的优点和劣势
字节范儿
做为项目负责人要注意到什么
目前为止经历最大的挫折是什么?如何走出来的?
平时有什么兴趣爱好?
为何不继续作原来的方向?
对工做的诚实有什么见解?
你的职业规划?session
关注公众号【业余码农】,回复 关键字[ 秋招 ],有面经解答资源相送哦。
本文来源为业余码农,转载请联系本公众号得到受权。
推荐阅读
生物专业女生教你准备两个月签约AI独角兽
生物专业却能签约字节跳动,在大学期间他经历了什么
一文教你如何作好大厂技术岗的面试准备
Amazing10承蒙厚爱。