#define、全局变量谁更安全?编译期固定数组长度该如何选择?
编译期固定长度数组的常量定义方案
- 开发中需遵循的两个原则:
- 避免使用宏(
#define),核心原因是它不具备类型安全性 - 避免使用全局变量,不少开发者甚至直接称其为“邪恶”的设计
- 避免使用宏(
- 当前需求:手里有近20个编译期长度固定、永远不会修改的数组,不确定该用哪种方式定义长度常量,总不能每次都直接写数值吧?
后来补充调研了专业技术社区的权威回答,最终决定用enum来定义这些数组的固定长度常量,这个问题可以关闭了。
内容的提问来源于stack exchange,提问作者Ian Stewart
相关产品推荐
相关产品推荐

