工程的艺术(1):不需要暴露出去的东西尽量封装起来

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u011675745/article/details/90175500
#ifndef _TEST_H_
#define _TEST_H_

#define SUCCESS 1
/**
*	do Something
*/
#endif // _TEST_H_

这是一个极为普通的头文件,我们在其中定义了一个宏。按照以往的经验,在头文件中定义宏是很常见的操作,但实际上此处有一个安全隐患。
此处我们给出一个原则,即:
对于不需要给外界知道的东西,都应该想办法将其隐藏起来
原因与面对对象思想中的封装相同,把接口暴露给外界,外界就可能会对其进行不必要的修改。此外,还有可能会跟别人所定义的宏发生冲突。
解决的方案有如下几种:

  1. 将此处的宏定义于实现文件中
  2. cpp文件中利用全局命名空间搭配常量的方式来定义魔数
  3. 利用枚举来定义魔数

猜你喜欢

转载自blog.csdn.net/u011675745/article/details/90175500