ismcc
测试代码在编译过程中是否运行(使用 mcc)
语法
x = ismcc
说明
如果此函数由 mcc 依赖关系检查器执行,则 x = ismcc 返回 true,否则返回 false。
如果此函数由在 MATLAB® 外部的系统命令提示符中运行的 mcc 启动的编译过程执行,则它将返回 true。如果在 MATLAB 内以及在部署模式下执行,则此函数将返回 false。要针对部署模式执行进行测试,请使用 isdeployed。必须在 matlabrc 或 hgrc(或它们中调用的任何函数,例如 startup.m)中使用此函数来防止代码被 MATLAB Compiler™ (mcc) 或 MATLAB Compiler SDK™ 执行。
在典型示例中,用户在其 MATLAB 代码中调用 ADDPATH。可以使用 ismcc 来防止它们在编译过程中执行,使用 isdeployed 来防止它们在部署的应用程序中执行,这些都可以在 startup.m 中实现,如本页中的示例中所示。
示例
`% startup.m
if ~(ismcc || isdeployed)
addpath(fullfile(matlabroot,'work'));
end