面试真题

技术面 + 非技术面高频问题 · 企业真题标题 + 校招宝自研参考答案
面试真题
2508 道
技术岗
641 道
非技术岗
1867 道
当前筛选
6 道

按赛道技术岗以技术方向细分;非技术岗按「结构化 / 半结构化 / 无领导 / HR / 职能」细分

按方向/形式点选即筛,再点「全部」还原

按难度

按企业点选查看该公司全部题目

技术岗 · 企业:滴滴6 道 · 点击进入查看参考答案

简单C++
C++中的友元函数和友元类有什么作用?
结论:友元函数和友元类用于授予非成员函数或其他类访问当前类私有和保护成员的权限,打破封装以实现特定功能。要点:1.友元函数:在类内声明friend函数,该函数非类成员但可访问私有成员,常用于重载<<运算符或工具函数;2.…
🎤 滴滴
简单Go
发给10个协程,如何打出升序的数字
结论:通过channel控制协程结果按序输出,避免并发乱序。核心要点:1.启动10个协程并发执行,各自生成数字但完成顺序不确定;2.主协程预建10个channel,协程i向ch[i]发送数字i;主协程按索引0~9依次接收…
🎤 滴滴
中等Go
多个协程读写map会怎样,什么是线程安全
结论:Go中多个协程并发读写map会触发运行时panic(concurrent map write),线程安全指并发访问下数据逻辑正确且无竞争。核心要点:1. Go原生map非并发安全,内部无锁,并发读写检测失败会崩溃;…
🎤 滴滴
中等Go
怎么用chann来通信,6个channel通信的典型案例
结论:Go中channel用于goroutine通信,通过make创建,<-收发。6典型:同步等待(无缓冲channel阻塞主协程至子协程发done);数据传递(ch<-data与<-ch);扇出扇入(多worker读同…
🎤 滴滴
中等操作系统
系统调用能否引起线程切换?malloc是不是系统调用?
结论:系统调用可能引线程切换,malloc是库函数非直接系统调用。要点:1.系统调用进入内核,若阻塞(如IO等待)当前线程让出CPU引发切换,非阻塞调用可能不切换;2.malloc属C标准库,在用户态管理堆空闲链表,仅当…
🎤 滴滴
中等数据库
Redis缓存雪崩是什么,如何解决和预防
结论:缓存雪崩指大量key同时失效或Redis宕机致请求直击数据库瘫痪。解决:1. 过期时间加随机值错开;2. Redis高可用(哨兵/集群);3. 熔断限流降级保护DB;4. 缓存预热;5. 互斥锁重建缓存。预防:监控…
🎤 滴滴
题目整理自公开面经,答案由校招宝自研生成,仅供参考