[英]How to convert try-catch statements in octave to a Matlab form?
我需要將舊的Octave代碼轉換為Matlab R2017a形式。 Matlab不理解將要提到的代碼,並且給出了錯誤:
未定義的變量“ lasterror”或類“ lasterror.message”。
錯誤的computeCentroids(第16行)msg = lasterror.message;
Mathworks表示,“ lasterror”將被(或已經被)從更現代的Matlab版本中刪除。 我個人不熟悉lasterror.message
或try-catch對。 我希望你能幫助我。
碼:
function centroids = computeCentroids(Xnum, Xcat, idx, K)
[m n] = size([Xcat Xnum]);
centroids = zeros(K, n);
for i=1:K,
indx = (idx(:,1)== i);
try
centroids(i,:) = [findMode(Xcat, indx) computeMean(Xnum, indx)];
catch
msg = lasterror.message;
fprintf(strcat(msg, '\n'));
end_try_catch
end
end
.
.
.
.
end
請檢查文檔 。 您可以打印如下錯誤:
try
%Error-maker
catch e
fprintf(1,'There was an error! The message was:\n%s',e.message);
end
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.