跳到主要内容

C++实践提要

这页是对原 C++实践笔记 的压缩版,保留更像“面试提纲”和“工程复盘”的内容。

设计与编码

  • 先守住封装、单一职责、开放封闭、接口隔离、依赖倒置这些基本原则。
  • 实际写代码时,比口头原则更重要的是命名、模块边界和资源生命周期。
  • 资源管理优先使用 RAII,不要把释放责任散落到流程分支里。

Linux 问题定位

  • 性能问题先做全局观察,再做进程级和线程级收敛。
  • 内存问题优先结合工具和日志,不要只靠肉眼看代码。
  • 线程问题先收敛共享资源、锁顺序和等待条件,再谈优化。

常见高频点

  • 内存泄漏:先考虑 new/deletemalloc/free 配对,再排查自定义内存池和异常退出路径。
  • 死锁:重点看互斥、持有并等待、不可抢占、循环等待这四个条件是否同时成立。
  • 多线程:持锁区尽量短,避免在锁内做 IO 或耗时调用。

设计模式只记够用部分

  • 工厂模式:适合屏蔽硬件、驱动、协议实现差异。
  • 观察者模式:适合流式数据、多模块订阅和事件回调。
  • 适配器模式:适合把外部接口转换成统一内部接口。
  • 策略模式:适合同一业务目标下切换不同算法或通信方式。

相关原文

评论

如果内容有勘误、补充或不同看法,可以直接写在这里。

正在加载留言板…