gpt4 book ai didi

matlab - 如何测试最新版本的 MATLAB?

转载 作者:太空宇宙 更新时间:2023-11-03 19:17:56 25 4
gpt4 key购买 nike

我要实现的功能需要知道当前版本的 MATLAB 是否至少与 R2014a 一样新。

是否有稳健、受支持的方式来执行此检查?

(关于“稳健、受支持”,我的意思是说我对脆弱的技巧不感兴趣,例如解析版本返回的字符串等)


顺便说一句,在这种情况下,我想要进行此检查的原因是要知道我可以使用函数 matlab.lang.makeUniqueStrings。如果有一种稳健、受支持的方法来检查此函数的可用性,我会使用它而不是测试当前的 MATLAB 是否足够新。不幸的是,似乎没有这样的检查:exist 对我能想到的这个函数名称的每个变体都返回 false。同样,我可以想到模仿适当测试的脆弱 hack(例如 which('matlab.lang.makeUniqueStrings')),但它们并不比我上面提到的版本测试 hack 好多少.

我发现的最佳解决方案是在 try-catch block 中使用 matlab.lang.makeUniqueStrings 运行命令。这仍然是一个脆弱的 hack,因为 MATLAB 没有提供强大的内置方法来捕获特定异常!

IOW,一切都是关于选择最不糟糕的 hack。测试当前版本是否足够新(即使这个测试是一个脆弱的 hack)至少具有通用性足以坚持某些功能的优点,并且至少包含脆弱的 hacky 代码的扩散。

最佳答案

我会使用 verLessThan功能:

verLessThan('matlab', '8.3')

如果您使用的当前版本早于 8.3 (R2014a),则返回真 (1),否则返回假 (0)。无需字符串解析。

然后你可以像这样使用它:

if ~verLessThan('matlab', '8.3')
% Run code using matlab.lang.makeUniqueStrings
end

关于matlab - 如何测试最新版本的 MATLAB?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22662692/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com