2020年腾讯实习生C++面试题&持续更新中(3)
hello,大家好,我是好好学习,天天编程的天天。
来给大家大家分享腾讯实习生面经了。
天天希望大家看到面经后一定要做充分的准备,结合自己掌握的知识,把面试中的每一个问题都深入研究,找到面试官提问的重点,找面试管想要你回答的要点。并可以将自己整理的答案,整理处理,按照一定的逻辑分点作答。
比如:
Q: 请你讲一下static这个关键字的使用你一定要思考一下,组织一下自己的语言,然后给出面试官想要的答案。
A:static在C语言和C++的用法大致有以下几种:
- static修饰局部变量
- static修饰全局变量
- static修饰函数
- C++中static修饰类的成员变量
- C++中static修饰类的成员函数
然后结合以上的5个知识点,给面试官,再展开讲解:
比如:static修饰局部变量的时候,其实一个非static修饰的局部变量是放在内存的栈空间上的,但是被static修饰之后就是静态的局部变量了,该变量就存储到内存的静态区(数据段),放在静态区的数据的生命周期和程序的生命周期一致,所以出了作用域也不会直接销毁。
就按照这个思路就把剩下的几点做以补充!这样的话,我们的小伙伴在复习知识的时候就得深入复习,查阅资料。
好了方法论就讲到这里,接下来继续分享面试题啦~~~
2020年腾讯C++实习面试真题
一面
- TCP三次握手老问题,四次挥手time-wait
- 多进程多线程
- 数据库全连接内连接
- STL各种容器的底层实现
- 多态,虚函数
- C++关键字static
- 快排的过程以及时间复杂度,如果有大量重复元素如何改进
- 概率题,斗地主中,地主拿到王炸的概率是多少
- linux操作,cp,grep
- gdb会不会,不会,都是用vs调试的
二面
- map、unordered_map、multimap、unordered_multimap的区别?
- vector中reserve和resize的区别?
- C++11智能指针?
- redis、memcached、rocksdb、mysql的区别?
- 假设内存空间有限,如何找到不重复元素?
三面
- 小根堆计时器是怎么样的机制
- 优先队列和map的区别是什么
- vector的内部结构
- 如何避免vector的动态扩容
- vector越界访问会怎么样
- 红黑树的规则
- 红黑树的增删改查的时间复杂度
- 往map里面增加或删除元素是怎么实现的
- 智能指针是自己实现的吗
- 如何实现智能指针
- 智能指针的引用计数如何确保线程安全
- 怎么实现原子操作
- RAII机制具体是什么含义
- 日志系统的相关问题
- 线程池是怎么使用的
- 长连接过程中线程一直持有连接对象吗
- 有用过什么数据库
- 数据库的字段类型是如何设计的
- 用的是什么数据库引擎
- Innodb和MyISAM的区别
- varchar最大长度是多少
- varchar如果长度超过了怎么办
- Linux常用的命令
- 压测如何查看在哪里达到瓶颈
本文就分享到这里啦,喜欢的话就点个赞吧。
来源:oschina
链接:https://my.oschina.net/u/4258260/blog/4281405