【发布时间】:2012-10-06 13:23:53
【问题描述】:
我在不同的 .sci 文件中有几个函数。此外,这些文件位于不同的目录中。这些函数由主程序使用。
对于旧的Scilab 版本,我使用getf(...) 加载所有函数(当然每个函数一个getf(...))和getf(...) 也加载主程序。
问题是:
- 如何将主程序和所有功能加载到
Scilab的新版本/环境中? - Matlab 呢?
【问题讨论】:
我在不同的 .sci 文件中有几个函数。此外,这些文件位于不同的目录中。这些函数由主程序使用。
对于旧的Scilab 版本,我使用getf(...) 加载所有函数(当然每个函数一个getf(...))和getf(...) 也加载主程序。
问题是:
Scilab的新版本/环境中? 【问题讨论】:
exec 替换 gef: http://help.scilab.org/docs/current/en_US/exec.html
但是如果你开始编写一个 Scilab 模块(扩展),你应该看看 Scilab 提供的工具箱骨架。
【讨论】:
正如 Sylvestre 在 Scilab 中指出的那样,您使用模块的文件名调用 exec()。
在 Matlab 中,这不是直接可比较的操作(这是它们分歧的地方之一):您将每个外部函数放在文件名与函数名匹配的文件中,然后将该文件放在路径中:当您调用函数 Matlab搜索匹配文件的路径。这确实意味着每个文件只能有一个函数,但如果你想要 C 风格的 #include 功能,this thread 上有多种方法。
出于您的目的 - 多个目录 - 您可能希望将每个相关目录添加到您的 startup.m 文件中的路径。另见How to use the MATLAB search path。
【讨论】: