ほとんどの OO 言語では、変数がオブジェクトを指す可能性があり、非常に便利な null 値を持つこともできます。
Matlab には、コマンドを解析してセル配列を返す関数があります。または、false
失敗した場合は (ゼロに等しい - これは別の一般的なパターンです) を返します。
function re = parse(s)
...
if (invalid)
re = false;
return;
end
end
問題は、結果を確認するとエラーが発生することです。
re = parse(s);
if (false == re)
Undefined function 'eq' for input arguments of type 'cell'.
エラーなしでそれをチェックする関数を作成しました: strcmp('logical', class(re)) && false == re
、しかし、コードのホットな領域で使用するには非常に遅く、また、作成しているすべての M ファイルにこの関数を追加する必要がある場合は不便です。
NaN
そのエラーをスローするだけでなく、それ自体と等しくないため、使用はさらに悪いです。
このパターンで使用するためのより良い代替手段は何ですか?