【发布时间】:2008-09-25 16:46:58
【问题描述】:
我正在重构“意大利面条代码”C 模块以在多任务 (RTOS) 环境中工作。
现在,有很长的函数和许多不必要的全局变量。
当我尝试用局部变量替换仅存在于一个函数中的全局变量时,我陷入了两难境地。每个全局变量的行为都类似于本地“静态” - 例如即使您退出并重新进入该函数,也保持其值。
对于多任务处理,“静态”本地变量比全局变量最差。它们使函数不再重新输入。
有没有一种方法可以检查函数是否在保留变量值重新进入而不跟踪所有逻辑流的情况下进行中继?
【问题讨论】:
标签: c refactoring static global-variables rtos