【发布时间】:2014-11-06 10:17:25
【问题描述】:
我目前正在制定一个指南,以提高嵌入式系统领域基于模型的 C 编程的可测试性。
我遇到的第一件事是他们创建了非常大的(例如 4k 行)函数。 对于测试问题,我建议将代码分成更小的部分。 但是我发现了某种问题,想用现在最有效的方法来解决这个问题。
想象一下以前的 4k 行函数有 10 个局部变量。
现在我需要将这些变量传递给使用它们的每个函数。
什么是最好的,也就是最有效的方式来做到这一点。
目前我有两个想法,都有一些缺点:
- 通过引用需要它们的函数来传递局部变量。我需要使用引用,因为许多函数会改变变量的某些内容。缺点:引用到堆 -> 速度降低。
- 使本地人在文件级别可见。缺点:由于变量的生命周期更长,因此总体上会占用更多内存。
是否有其他方法可以减少缺点?
【问题讨论】:
-
对于 currios 人:模型开发的工具是 ASCET