后端岗位面试题更新 2026-08-05
#define 和 inline 的区别是什么?分别适合在什么场景使用?
新华三后端开发电子/半导体技术原理方案权衡CC++
考察说明
考察宏定义与内联函数的语义差异、适用场景及边界控制
回答思路
- 准确说明宏是预处理器文本替换、inline 是编译期函数内联
- 指出宏的类型不安全、无作用域、易产生副作用等缺陷
- 说明 inline 的类型检查、作用域、可调试性与求值次数保证
- 给出典型选型:常量与简单表达式用 #define,需要类型安全的函数用 inline,并考虑性能与可维护性
本题附完整参考答案与评分标准
登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。