• ベストアンサー

ある配列の特定の位置の値が変わった場合(もしくは0になった)場合、 ブレークさせる方法はありますか?

C# 2008 Expressを使っています。 ある配列があり、特定の位置例えば2番目の値が変わった場合(もしくは0になった)場合、 ブレーク(中断)させる方法はありますか? ary[2] = 3; ary[2] = 0; <--- 0になった ここのソースでブレーク(中断) ある配列で値を設定している位置が沢山あり、ifとかでプログラムを書くのは面倒なので デバッグで出来る方法が知りたいです。 昔VC4かBC2.0か忘れましたが、ウォッチ?で出来たような記憶がありますが・・・ 私は安直にプログラムを組んでいますが、 皆さんはクラスのメソッドなど使って、代入値の監視などしているのでしょうか? かなりパフォーマンスが落ちるので無意識に避けていましたが、 どんなプログラムの作りが現在標準なのでしょうか。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.3

回答1です。 >Express版では右ボタンで「条件」など表示されませんが、 >仕様でしょうか? よくわかりませんが、機能削減されているのかもしれません。苦肉の策ですが、 if( i==2 && ary[i]==0) { i=i; } という無害なコードを追加して、「i=i;」にブレークポイントを設定しておくという手は考えられます。変数iは実際に使用しているものに置き換えてください。

atoranta01
質問者

補足

ありがとうございます。 これぐらいの対応しかできなさそうですね。 VS2005で書き直すしかないかな。

その他の回答 (3)

  • hidebun
  • ベストアンサー率50% (92/181)
回答No.4

http://msdn.microsoft.com/ja-jp/library/9k643651.aspx これを使って、どうにかできないかと思ったのですが、 一度ご覧になってみて下さい。

  • hidebun
  • ベストアンサー率50% (92/181)
回答No.2

ブレークポイントを作成し、その上(赤○)の上で 右クリックすれば表示されると思います。

atoranta01
質問者

補足

それがC# 2008 Express版では出ませんでした。 VS2005では条件というメニューは出ました。 Expressには、こんな制限もあるのでしょうか?

回答No.1
atoranta01
質問者

補足

Express版では右ボタンで「条件」など表示されませんが、 仕様でしょうか? それとも設定が悪いのでしょうか?