对于隐式类型的对象,所生成的 C 结构会带有对象的名称和后缀“_t”。不会为该对象定义类型。例如,名称为 A_t 的 C 结构是在隐式类型的对象 A 的规范文件中生成的。该对象具有一个名称为 att1 的特性,它是作为结构的数据成员而生成的,如下所示:
struct A_t {
/*** User-explicit entries ***/
int att1; /*## attribute att1 */
};
对象所属的程序包的规范文件中会为对象进行实例化并分配内存。例如,对象 A 所属的 Default 程序包的规范文件中会生成以下语句:
struct A_t; extern struct A_t A;
第一条语句是结构 A_t 的声明;第二条是 struct A_t 的实例 A 的实际定义和内存分配。
IBM® Rational® Rhapsody® 会自动生成操作以处理对象创建、初始化、清除和销毁。这些操作与 C++ 中的构造函数和析构函数类似。例如,会为 A 自动生成以下操作:
不会为单例生成 Create() 和 Destroy() 操作。有关更多信息,请参阅单例对象。