腾讯PCG手机QQ部门提前批面经(已OC)
一面:8.22号 1小时20分钟
操作系统有哪几种锁?
死锁一般什么条件会发生?
用户态和内核态有什么区别?
用户态和内核态有哪些方法可以切换?
线程有哪几种状态?
STL比较熟悉的概念?
Map和set的区别?
项目中用到哪些设计模式?
TCP/UPD、HTTP有什么区别?简单介绍下。
TCP为什么挥手需要四次?
你知道长连接怎么实现吗?
管道化(管线化)知道吗?(长连接里的管道化)
内存泄漏如何检查?
Const和define有什么区别
内存分区大概分几个区?
堆和栈有什么区别?
结构体的内存对齐有什么规则?
位域听过没?
内联函数一般有什么优缺点,在什么场景下适用?
关系型数据库和非关系型数据库有什么区别?
野指针遇到过吗?什么情况下会遇到野指针?
指针和引用有什么区别?
写一下strcpy的实现?
8.24 第二轮面试 1小时
C++里的多态是一个什么概念,虚表指针是放在类还是对象中的什么地方的?多少字节?
C++中父类和子类的同名函数是怎么通过编译的?父类子类
标准模板库是静态还是动态的?回答了静态
STL用的多吗?用了哪些?
Vector和list在查找和删除、插入操作他们的性能差异在哪里?
标准模板库里经常用到的仿函数,仿函数是用来做什么的?
容器里放了一堆堆人,我想让人去做一些比较的话,我一般传一些仿函数进来,我为什么要这么做呢?为什么要用到仿函数呢?
迭代器失效一般有什么场景,迭代器会失效?
怎样操作让它指向下一个元素?
迭代器失效去操作的话会报什么错误?
C++中的智能指针主要有哪些,你一般怎么用的?
在一个线程使用weak_ptr,在另一个线程中已经释放了,会出现什么问题?报什么错?
原话:线程安全一方面要防止内存泄漏,另一方面也要保证程序是否稳定,不要出现闪退,不用智能指针的话,访问一块被析构的内存,那程序不就挂掉了吗?
HTTP的GET和POST有什么区别?
POST的两次请求能说一下吗?需不需要服务器确认啊?为什么不一次就可以了?为什么要分两次呢?
HTTPS了解吗?可靠性传输,安全传输是怎么保证的?
验证哪些信息能够证明说不是从伪造的服务器发送过来的?
假如说一个从QQ的域名来的,一个从TENCENT来的?会不会验证域名?
有些开发者,把代码拿走了,那么它是不是可以获取腾讯的一些数据?认证是如何纠察出哪些恶意的客户呢?
DNS劫持是一个什么概念?
解决DNS劫持有什么好办法?(回答了HTTPDNS)
服务器不支持HTTP链接怎么办,还有其他方法吗?
项目做了哪些东西?简单介绍下。
8.26 第二轮交叉面 40分钟
内存对齐相关。OK
数据库:创建一个表:mysql语句怎么写?
TCP三次握手,拥塞控制。
1000个数里选取最大的3个数。如何操作?