
c++八股文
文章平均质量分 79
芒果敲代码
努力过才会有结果,别一直想!
展开
-
21. socket中的多路复用,及其优缺点,epoll的水平和边缘触发模式?
当某个FD就绪(可读/可写/异常)时通知程序处理,避免阻塞等待。的技术,核心是通过系统调用。原创 2025-04-30 08:00:00 · 779 阅读 · 0 评论 -
20. 进程之间的通信方式有哪些?
单向通信,父子进程间使用(匿名管道),或通过文件系统(命名管道)。原创 2025-04-29 08:00:00 · 294 阅读 · 0 评论 -
19.内存对齐是什么?为什么要进行内存对齐?内存对齐有什么好处?
内存对齐通过强制数据地址满足特定倍数要求,优化CPU访问效率并兼容硬件限制。其核心价值在于平衡存储空间与运行时性能,是底层编程和高性能计算的关键优化点。原创 2025-04-28 08:00:00 · 467 阅读 · 0 评论 -
18.class和struct的区别?
语法区别:仅默认访问权限和继承方式不同。设计意图用struct强调数据公开(如坐标点、配置参数)。用class强调数据封装(如银行账户、网络连接)。代码一致性:团队应统一约定使用风格。原创 2025-04-28 08:00:00 · 377 阅读 · 0 评论 -
17.原子操作是什么?
硬件原子指令(如x86的LOCK前缀、ARM的缓存一致性协议(如MESI)编译器与操作系统的协作理解原子操作是掌握多线程编程、无锁编程和同步机制(如锁、信号量)的基础。原创 2025-04-27 08:00:00 · 350 阅读 · 0 评论 -
16.锁的底层原理是什么?
锁的底层实现是硬件原子指令 + 操作系统调度 + 内存模型硬件提供原子操作保证互斥;操作系统管理线程阻塞与唤醒;内存屏障确保多核缓存一致性。理解锁的底层原理有助于避免死锁、优化高并发场景性能。原创 2025-04-26 08:00:00 · 924 阅读 · 0 评论 -
15.程序的运行步骤
【代码】15.程序的运行步骤。原创 2025-04-25 15:20:34 · 714 阅读 · 0 评论 -
13-14,指针空间清理,`#define`和`const`的区别。
系统通过内存分配时隐藏的元数据(如大小、元素数量)来确定释放空间的大小。这种机制依赖于编译器和内存分配器的实现,但核心原理是统一的:元数据存储在用户不可见的区域,释放时通过指针偏移读取。理解这一点有助于避免内存泄漏和悬空指针问题,同时为手动内存管理提供底层逻辑支持。原创 2025-03-26 11:47:34 · 720 阅读 · 0 评论 -
10-12. 深浅拷贝,智能指针,弱指针计数吗?以及malloc内存分配方式?
方式拷贝行为是否有二次释放问题是否独立内存浅拷贝仅复制指针地址可能会有共享同一块内存深拷贝复制指针指向的内容不会各自独立智能指针共享或独立管理资源不会取决于指针类型不会增加对象的引用计数,但会维护一个弱引用计数。控制块中存储了强引用计数和弱引用计数,控制块通常是在第一个创建时分配的。的主要作用是解决的循环引用问题,并且可以通过lock()方法临时获取一个来访问对象。原创 2025-03-17 14:03:41 · 350 阅读 · 0 评论 -
3-9 final、虚函数、智能指针、匿名函数、右值引用,左值引用和指针。
每个对象在内存中会包含一个指向虚函数表的指针(vptr)。当通过基类指针或引用调用虚函数时,程序通过vptr找到虚函数表,再根据函数在表中的偏移量调用对应的函数。原创 2025-03-12 01:57:14 · 916 阅读 · 0 评论 -
2. 多态的实现原理(实现方式)是什么?以及多态的优点(特点)?
多态是C++面向对象设计的核心特性,通过虚函数表和动态绑定实现运行时灵活性,显著提升代码的可维护性、扩展性和抽象能力。在面试中,可结合具体场景(如游戏开发、图形渲染)说明其实际应用价值。原创 2025-03-11 13:08:52 · 371 阅读 · 0 评论 -
c++八股文理解篇
由于本人即将毕业,但是知识不是很牢固,所以出一个系列的文章用于复习,也供大家参考!如果需要面试篇:请参考。原创 2025-03-10 12:26:50 · 440 阅读 · 0 评论