声明和定义协议扩展类
协议扩展示例提供了协议扩展的简单说明。它定义了一个“温度”属性协议扩展类。为 定义了默认实现,并为 和 定义了特定的实现。AcDbEntityAcDbCircleAcDbRegion 该示例可作为更复杂(和实际)使用 ObjectARX 协议扩展机制的模型。此协议扩展的基类称为 ,派生自 。此类定义将由派生的协议扩展类 、 和 继承的虚函数。在此示例中,只有一个函数:.协议扩展类的类层次结构如下图所示:AsdkEntTemperatureAcRxObjectAsdkDefaultTemperatureAsdkCircleTemperatureAsdkRegionTemperaturereflectedEnergy() ![]() 使用协议扩展的第一步是声明和定义每个协议扩展类。基类 是使用宏定义的抽象基类。该类最终将注册为 ObjectARX 类层次结构的一部分。AsdkEntTemperatureACRX_NO_CONS_DEFINE_MEMBERS() 子类是使用标准 C++ 语法定义的,用于派生新类。不应在 ObjectARX 类层次结构中注册这些类,因此您不需要对它们使用 ObjectARX 宏。 对于每个类,您可以实现构成协议扩展的函数。在此示例中,每个类只有一个函数 ,用于计算实体的温度。reflectedEnergy() 父主题: |
|Archiver|CAD开发者社区
( 苏ICP备2022047690号-1 苏公网安备32011402011833)
GMT+8, 2025-3-14 07:27
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.