首页 > 南京孩子王 C++开发实习一面 (附自己的答案)
头像
just_keep_going
编辑于 2021-03-29 21:47
+ 关注

南京孩子王 C++开发实习一面 (附自己的答案)

括号的黑体部分是我自己查找出来的答案,面试的时候没答出来。
1.自我介绍

C++

2.vector如何扩容?(答:二倍扩容),扩容可以直接加在后面吗?(答:不可以)

3.用过map吗?(答:键值对),和unordered_map的区别?(答:查找速度不同 unordered_map O(1),map O(lgN)),为什么不同(答:底层数据结构不同),底层数据结构是什么?(答:红黑树),不是问map,问的是unordered_map(答:不清楚 其实是map是红黑树,unordered_map是哈希表)

4.虚函数的作用?(多态),析构函数能否为虚函数?(需要),构造函数能否为虚函数(可以但没必要 答错了:不可以
5.linux下C++的编译用什么?(g++),调试呢?(gdb),用过吗?(没有)

计网

6.了解计网?(答:对),浏览器输入一个地址,发生了什么?(答:DNS,TCP,HTTP,TLS),没有了吗?(答:IP?ICMP?后面的不清楚 还有ARP),知道MAC地址和IP地址的区别吗?(答:一个是物理地址,用来标识一台计算机,一个是网络层的地址),可以只有MAC地址吗?(。。。。不清楚,可能可以吧 应该是不可以,IP要用来划分子网,如果只有MAC地址无法根据子网划分找到确定的主机),那linux下关于网络的指令用过吗?(ifconfig ping netstat route),如何查看内存?(top)

OS

7.了解操作系统?(答:对),讲一下多进程和多线程的区别(资源分配,创建和切换难易),你提到了上下文切换开销不同,具体上下文切换要保存什么?(寄存器,程序计数器虚拟地址,栈,全局变量),进程的哪些资源是线程共享的?(堆,静态数据,代码段),还有呢(全局变量。。。。想不起来了 其实还有文件,地址空间,子进程,注册的信号等),那多进程相比多线程有什么优势?(隔离性好),还有呢?(多线程的一个线程挂掉可能会导致所有线程挂掉。。。。不知道了 还有减少线程加锁解锁的性能损失,可以拥有理论全部地址空间等),僵尸进程?(父进程没能为子进程善后),孤儿进程?(父进程先于子进程退出),如何创建进程?(fork vfork clone),如何创建线程?(不清楚 pthread_create)

8.学过网络编程吗?(没有)

数据库

9.项目里用到MySQL,那MySQL索引?(不了解),事务?(只知道commit之后是一个事务),用过吗?(用过)

10.redis也用过?(redis别问了。。。。)

项目

11.做过项目里的亮点

12.如果公司和导师同时有任务,怎么处理?

13.有什么想问的吗?

总结:STL底层不了解,数据库不会,网络编程不会,还有很大的努力空间啊😅

更多模拟面试

全部评论

(9) 回帖
加载中...
话题 回帖