if a == 1 @@ b == 1 という記述をチェックボックスのCallbackにしており、以下のようなエラーが出るのですが、実行すると条件通りの動作はしているようです。
(エラー内容) @@と && の演算の演算子は、論理スカラー値に変換可能でなければなりません。
【@@は縦線二本です、表示されないので】 どのように修正すべきか教えていただけると助かります。宜しくお願いします。

 Akzeptierte Antwort

michio
michio am 8 Feb. 2018

1 Stimme

の1つ目の例題に「X と Y にショートサーキット OR 演算子を使用すると、エラーが返されます。ショートサーキット演算子は、スカラーの論理条件でのみ演算を行います。」とあります。
Kenjiさんのコードでの変数 a, b がベクトル値であるためのエラーかと思いますが、いかがでしょうか?

4 Kommentare

Kenji Ohmori
Kenji Ohmori am 8 Feb. 2018
Bearbeitet: Kenji Ohmori am 8 Feb. 2018
ありがとうございます。変数 a, bは、数値で0または1です。
二つともglobal変数なのですがエラーと関連していますでしょうか?
michio
michio am 8 Feb. 2018
global変数であることは原因とは考えにくいですね。
できればエラーが発生するコード箇所にブレークポイントを設定して、エラーが発生する際の実際のa, bの値(スカラーなのかベクトルなのか、1,0 意外が発生していないか)を直接確認してみたいです。
Kenji Ohmori
Kenji Ohmori am 9 Feb. 2018
Bearbeitet: Kenji Ohmori am 9 Feb. 2018
ご指摘のようにブレークポイント設定で状態を確認しました。別の理由で変数の値がうまく受け渡せていませんでした。解決しました、ありがとうございます。
michio
michio am 9 Feb. 2018
よかったです。安心しました。

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu グラフィックス オブジェクト finden Sie in Hilfe-Center und File Exchange

Gefragt:

am 8 Feb. 2018

Kommentiert:

am 9 Feb. 2018

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!