淘天c++一面

面试官很好,我答不出来的地方还尝试引导,可惜我太菜了八股背得不好感觉很凉#牛客AI配图神器##我的秋招日记#
用sizeof()和strlen()去获取一个字符串的长度有什么区别
static修饰一个全局变量和不修饰有什么区别
那修饰局部变量有什么区别?把局部变量的地址作为函数返回值返回,外面拿到这个地址后,修改这个值,是合法的吗?会报什么错误?
c里面的一个普通的成员函数能不能访问static成员变量?
extern c的作用是什么?
虚析构有什么作用?什么时候需要用到虚析构?
如果拿基类指针指向子类对象,但是没有写虚析构,delete指针会怎么样?
new和malloc两种分配内存的方式有什么差别,如果内存不足的话分配失败会有什么表现?
如何写代码判断这个系统是32位还是64位?
如何实现一个哈希表?
在几十亿个数据里找最大的前k个数,可以怎么去找?
优先队列底层是怎么实现的?
口述代码:
1. 如何判断两个单链表相交;
2. 字符串里面有多个括号,怎么判断是否是合法配对关系
10分钟项目细节,项目中最有挑战性的地方是什么?
反问:
base:杭州
具体工作:统一接入网关的开发
技术栈:c
面试:2+1
全部评论
面试官引导是好心,怪我接不住😭
点赞 回复 分享
发布于 09-05 16:59 北京
面完复盘补漏洞,秋招继续卷!🔥
点赞 回复 分享
发布于 09-05 16:59 湖南
hxd,淘天啥时候投的呀?另外投递的是淘宝部门吗
点赞 回复 分享
发布于 09-05 11:17 北京
楼主是硕士吗
点赞 回复 分享
发布于 昨天 14:34 北京
可以问问2+1的意思是2轮技术面+一轮hr面么
点赞 回复 分享
发布于 昨天 10:56 湖北

相关推荐

09-08 16:48
已编辑
门头沟学院 C++
更新一面居然过了,约二面自我介绍面试官说一面基础知识,二面问项目一、40min超长八股(答到晕厥)1.C++类的大小由什么决定?2.单继承下虚函数表数量?多继承为什么会有多个虚函数表及对应表头指针?3.虚函数相比普通函数的性能开销?4.虚函数重写的时机?5.什么是右值引用?6.move 的操作过程?7.string 类型的移动构造做了哪些事情?8.forward 函数?为什么不用forward会变成左值?9.C++ 的 RAII 机制核心是什么?10.RAII 如何配合异常处理的流程?11.dynamic_cast、static_cast 的区别?12.设计模式的原则?13.单例模式怎么实现?14.观察者模式的应用场景?15.工厂模式的分类及作用?16.STL 的空间分配器是怎么设计的?17.STL 是怎么调用 allocator 的?(如 vector<string> 的构造过程)18.vector 扩容过程?19.vector 扩容时如何判断哪些元素需要移动哪些需要拷贝?20.push_back 和 emplace_back 区别?21.shared_ptr 的控制块设计?22.shared_ptr 的引用计数存储在哪里?23.程序编译过程?(源码到二进制)24.动态链接为什么要加上 -fPIC 标记?25.进程初始化时操作系统做了什么?26.操作系统怎么分配进程的虚拟地址?27.操作系统怎么实现从虚拟地址到物理地址的映射?28.页表初始化时会不会把所有虚拟内存都映射到物理内存?29.C++ 常见的锁的类型?30.互斥锁怎么实现?31.死锁的四个必要条件?32.死锁怎么调试?33.计算机网络协议分层?34.ping 命令工作在哪一层?35.IP 头字段有哪些?36.TCP 三次握手流程?37.内存泄漏怎么定位?38.内存泄漏的影响?二、手撕1. 不同路径II
点赞 评论 收藏
分享
📍面试公司:联想(Lenovo)🕐面试时间:2025年08月23日💻面试岗位:C++研发工程师❓面试问题:一、现代C++特性与语言演进 (C++11/14/17/20)1.​​右值引用与移动语义​​:解释std::move和std::forward的区别?完美转发是如何实现的?2.​​智能指针进阶​​:std::shared_ptr的线程安全性如何?std::weak_ptr如何解决循环引用?3.​​C++17/20新特性​​:谈谈你对std::optional, std::variant, std::string_view的理解。C++20的Coroutines(协程)有什么优势?4.​​类型推导与模板​​:auto和decltype有什么区别?模板参数包(Parameter Pack)如何展开?二、内存管理新范式1.​​内存池技术​​:如何自己实现一个内存池?2.​​检测与优化​​:除了Valgrind,还有哪些工具(如ASAN、MSAN)可用于检测内存问题?如何重载new和delete来跟踪内存分配?三、并发编程与现代多线程1.​​原子操作与内存模型​​:std::atomic<T>是如何保证原子性的?解释一下内存序(Memory Order):memory_order_relaxed、memory_order_acquire、memory_order_release的区别和应用场景。2.​​无锁编程​​:什么是无锁(Lock-Free)数据结构?尝试实现一个无锁的队列或栈。3.​​协程​​:C++20的协程底层机制是什么?co_await、co_yield、co_return分别做了什么?四、STL容器与算法新特性1.​​新容器​​:std::unordered_map的负载因子和再哈希策略是怎样的?C++23引入了哪些新容器?2.​​算法复杂度与选择​​:std::sort用的是哪种排序算法?什么情况下会退化为O(n²)?如何避免?五、系统设计与性能优化1.​​设计线程安全的LRU缓存​​:要求get和put操作的时间复杂度为O(1),并考虑高并发场景。2.​​零拷贝技术​​:如何在Linux下使用sendfile或splice实现零拷贝文件传输?3.​​高性能日志系统​​:如何设计一个每秒处理千万级日志条目且保证零丢失的采集系统?六、设计模式与架构演进1.​​现代C++下的设计模式​​:如何使用移动语义和智能指针实现单例模式、工厂模式?2.​​分布式系统概念​​:如何理解分布式缓存中的缓存击穿、雪崩和穿透?如何设计一个防护系统?七、手撕代码题目更新1.​​实现一个移动语义优化的字符串类​​(MiniString),要求支持拷贝构造、移动构造、析构。2.​​实现一个简化版的std::shared_ptr​​(MySharedPtr),模拟引用计数。3.​​实现一个线程安全的环形缓冲区(Ring Buffer)​​,支持多生产者和多消费者。🙌面试感想:联想的C++面试很​​现代化和深度化​​。面试官不仅考察传统的语言特性和底层原理,还会深入询问​​C++17/20的新特性、无锁编程、协程、高性能系统设计​​等前沿话题。手撕代码环节的题目综合性更强,常要求实现一个小型的数据结构或系统组件,并考虑线程安全和性能。项目经验部分问得非常细,要求候选人能清晰说明技术选型、性能优化证据链和故障排查路径。整体感觉面试官水平很高,乐于追问,氛围既有挑战性又很专业。
查看19道真题和解析
点赞 评论 收藏
分享
评论
3
21
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务