我正在编写一个 MATLAB 应用程序,它有许多函数分布在不同的文件中。我有一个记录器,它是一个带有函数指针的结构体,我使用它来记录用户可以看到的信息(即当前执行的函数、计算结果等)。我使用结构体作为我的记录器,而不是简单的
fprintf()
,是因为将来我可以轻松地将其替换为 XML 记录器、HTML 记录器等。
由于我的代码由许多相互调用的函数组成,所以我将我的记录器结构声明为全局变量,这样我就不必将它传递给所有的函数。然而,无论我看哪里,我都会看到全局变量在 MATLAB 中是邪恶的化身,并且会严重减慢我的程序速度。
有没有一种方法可以在文件之间共享变量,而不必将它们作为输入参数传递,并且不会遭受严重的性能损失?