GEN

GEN 命令使您能够在可执行程序中向对象生成事件。此命令可以在带有或不带参数的情况下执行。

语法

<instanceName>->GEN(<eventName>(<parameterName>
   [, <parameterName>]*))
<instanceName>->GEN(<eventName>())
<instanceName>->GEN(<eventName>)

自变量

instanceName

指定实例或导航表达式的规范名称。

规范名称可以是:

eventName

指定要生成的事件的名称。如果此事件需要参数,请将参数包括在 GEN 命令中。

如果事件带有参数,那么 GEN 命令将为该事件提供正确数目的参数以及正确的类型。例如,要生成事件 X,其中 X 定义为 X(int, B*, char*),并且 BIBM® Rational® Rhapsody® 中定义的类,请输入:

A[1]->GEN(X(3,B[5],"now")) 
或者
A[1]->GEN(X(1,NULL,"later"))

如果事件的参数并非指向 Rational Rhapsody 中定义的类的指针,例如 intchar*userType(其中 userType 是在 Rational Rhapsody 外部定义的 用户定义类型),那么跟踪器依靠 C++ 运算符 >> (istream&) 或模板 string2X(T& t) 来正确解释您输入的字符。由于运算符 >> 会将字符 1 转换为整数 1,因此 A[1]->GEN(Y(1)) 有效;但是,
由于运算符 >> 不会将字符“one”转换为整数,因此 A[1]->GEN(Y(one)) 无效。同样,如果您使用了在 Rational Rhapsody 外部定义的类型,并且要通过跟踪器为其生成事件,那么必须为其提供运算符 >> 操作。


反馈