そのため、関数を設定するプロパティが値の設定に成功したかどうかを示す値を返すようにしたいクラスが与えられました。
classdef Foo
properties
bar;
end
methods
function this = set.bar(this, instanceOfBar)
if instanceOfBar.x < 5 & instanceOfBar < 10
this.bar = instanceOfBar;
return something to tell me that this instance of bar matched my criteria
else
return some value to tell me that it did not match
end
end
end
end
classdef bar
properties
x;
y;
end
end
だから私はたくさんのバーオブジェクトを持っていて、そのうちの1つを受け入れるまでそれらをfooに渡したいと思います。クラス外でこれを実行できることはわかっていますが、すべてのデータ検証をクラス内で実行したいと考えています。
set 関数に別の値を返させようとしていじりましたが、何も機能しませんでした。これは可能ですか?
そうでない場合、私の回避策は、最後のセットが成功したかどうかを報告し、各呼び出しの後にそれを確認することを唯一の目的とするプロパティを追加することです。それで、それが不可能な場合、他の誰かがこの欠落している機能に対する適切な回避策を持っていますか?
編集:最初の回答に応じて
if set(myobject, 'A', 1) == 'Good'
execute code
else
do something else
テストでは、これは機能しません。私はあなたの答えを誤解しましたか?