1 自我介绍
2 介绍项目
只是介绍,没问细节(感觉他不了解这个项目)
-如何保证效率?
线程局部存储不加锁+桶锁竞争小
3 蓝桥杯是个什么样的比赛?
-能不能想起来考了什么算法题,
就想起来一个贪心+优先级队列的,没考dp+图
4 能实习几个月?是否了解公司?有没有来过长沙,能否接受工作地点
画饼ing
-课上完没?学校是否允许?
5 平时在哪些平台编程?
Windows/Linux->VS、VSCode/gcc、g++、Makefile(应该说vim更好)、VSCode连接云服务器
-问了一下VSCode怎么连云服务器
-然后问了一下怎么出错了调试代码
有日志查日志,走读代码,打印变量、gdb,下来就是gdb的一些细节(没问具体命令)
6 用过哪些Linux命令?
ls、cd说了两个就过了
7 进程间通信的方式
(没问细节)
管道(匿名,命名),共享内存、消息队列、信号量,原始套接字
8 如何查看磁盘使用情况?
看一下super block情况
-具体命令?
不会,没学过
(文心一言答案)
在Linux系统中,有多种方法可以查看磁盘使用情况。
- df命令:
- 打开终端,输入
df -h
命令。这会显示文件系统的磁盘空间占用情况,-h
参数同样表示以易读的格式显示。- du命令:
du
命令用于查看文件和目录的磁盘使用情况。例如,du -sh
会显示当前目录下的总占用空间(-s
表示汇总,-h
表示易读格式)。- 图形界面工具:
- 许多Linux发行版都提供了图形界面的磁盘管理工具,如GNOME Disks(在GNOME桌面环境中)或KDE Partition Manager(在KDE桌面环境中)。这些工具提供了直观的界面来查看和管理磁盘空间。
9 内存泄漏如何解决?
现成的工具
智能指针
new/delete、new[]/delete[]对应
(应该再加一个实现继承的类析构函数变成虚函数)
10 程序编译链接过程
Esc,iso……
11 讲解进程地址空间(C/C++内存分布)
……
12 STL用过什么容器?
说了一堆……
-一个vector 如果插入过多导致size太大怎么办?
reserve/resize缩容吧(不知道是什么问题)
-缩容数据是否会被清理
不同编译器的实现有差异,VS下还是不清的
如何彻底删数据?
memset/bzero
13 STL的容器是否是线程安全的?
基于效率考量,不是线程安全的
14 除了开发还想用C++做什么?
测试,服务端开发(最近在写的项目boost搜索引擎,仿muodu库)
15 数据库
-数据库用的多不多
不多
-sql语句执行特别慢,怎么办?
(查询语句)是不是一次显示的列太多了
(查询语句)加点过滤条件
索引
(在正准备说索引用的是B+树)时结束了
网络没问
#endif