状態の遷移を検知して記録

<< 目次を表示 >>

ページ位置:  プログラムの動作解析 > 動作の記録 > 状態遷移の情報を追加 >

状態の遷移を検知して記録

このページでは、状態マシン内の状態に制約を設定し、状態の変化を記録する方法を説明します。

 

 

例:

下の状態 プロパティダイアログは、状態Parliamentの例です。制約タブの内容は、どのようにクラスCTrainと関連付けているかを示しています。状態には、1つでも複数でも制約を追加できます。下の例では、状態Parliamentには2つの制約が定義されています。

 

 

CTrainクラスには、Locationというメンバーがあり、型はintです。また、Departing.Nameというメンバーがあり、型はCStringです。

制約として指定する場合、設定・比較可能な型は、基本型・列挙値・文字列のいずれかです。

 

上記の制約の意味は次の通りです。:

 

 

制約に関するオペレータ

状態の制約を定義する場合に利用できるオペレータは、2種類があります。:

 

状態に定義されたすべての定義は、何も指定されていない場合にはANDがあるとみなします。

先ほどの例で、ORを利用する場合にはつぎのような定義になります。:

 

Location=0 OR

Location=1 AND

Departing.Name!=Central

 

下の例は、別の条件の定義例です。:

 

Departing.Name!=Central AND

Location!=1

 

 

注意:

文字列の前後の引用符は必須ではありません。文字列の比較は、常に大文字小文字を区別して比較されます。

 

 

参照: