我的代码是使用MATLAB设计的,我仍然使用它。但是,如果我尝试使用Octave运行它的某些部分,我会收到错误。例如,MATLAB代码使用pause on
,而Octave则不然。
有没有办法检查哪个编程环境正在使用代码?例如,
if invoking_env == 'Matlab'
% do this
else
% ok, so do this
end
我可以使用getenv('COMPUTERNAME')
,但在这种情况下,计算机名称是相同的!感谢。
答案 0 :(得分:6)
答案 1 :(得分:0)
我认为最好的方法是使用一个子函数来检查它。以下代码段可能是需要系统最小值的代码段。使用持久变量,可以重复调用它,而不会造成严重的性能损失。
function r = isoctave ()
persistent x;
if (isempty (x))
x = exist ('OCTAVE_VERSION', 'builtin');
end
r = x;
end
然后您可以在条件块中轻松使用它。请参阅Octave wiki上的that entry。