本帖最后由 john_light 于 2010-9-30 15:26 编辑
举一个不一定恰当的例子,有某个量CalcRlt只能由某个功能模块CalcFunc计算得出,其他地方需要读取使用该量。
- static unsigned int CalcRlt;
- void CalcFunc(void)
- {
- ...
- CalcRlt = ...;
- ...
- }
我们可以考虑定义一个函数CalcRltGet读取该值。
- unsigned int CalcRltGet(void)
- {
- return CalcRlt;
- }
这样,CalcRlt被我们制作成一个只读的量,菜鸟同事或老眼昏花的我们都不大会意外写入CalcRlt。
如果把CalcRlt声明成一个全局变量,就存在隐患。
|