<instanceName>->GEN(<eventName>(<parameterName> [, <parameterName>]*)) <instanceName>->GEN(<eventName>()) <instanceName>->GEN(<eventName>)
instanceName
標準名稱一律參照相同的實例。導覽表示式可以在不同的時間參照不同的實例。比方說,如果已刪除實例 B[0] 至 B[3],則 B[#0] 可能會參照實例 B[4]。
eventName
指定要產生之事件的名稱。如果事件需要參數,請將它們併入 GEN 指令。
如果事件具有參數,則 GEN 指令會為事件提供正確的參數數目及正確的類型。例如,若要產生事件 X(其中 X 定義為 X(int, B*, char*)),並且 B 是在 IBM® Rational® Rhapsody® 中定義的類別,請輸入:
A[1]->GEN(X(3,B[5],"now")) or A[1]->GEN(X(1,NULL,"later"))
當事件的參數不是在 Rational Rhapsody 中定義的類別指標,例如 int、char* 或 userType(其中 userType 是在 Rational Rhapsody 外部定義之使用者定義的類型)時,追蹤程式會依賴於 C++ 運算子 >> (istream&) 或範本 string2X(T& t) 來解譯您正確鍵入的字元。A[1]->GEN(Y(1)) 可以運作,因為運算子 >> 會將字元 1 轉換為整數 1,但是
A[1]->GEN(Y(one)) 不能運作,因為運算子 >> 不會將字元 "one" 轉換為整數。類似地,如果您使用在 Rational Rhapsody 外部定義的類型,若想要透過追蹤程式產生指向它的事件,則必須為其提供運算子 >> 作業。