ImqBinary C++ 类

此类封装可用于 ImqMessage 记帐标记相关标识消息标识 值的二进制字节数组。 它允许简单的分配,复制和比较。

图 1。 ImqBinary 类
显示 ImqBinary 类及其父类 ImqItem的 Booch 类图。

对象属性

数据
二进制数据的字节数组。 初始值为空。
数据长度
字节数。 初始值为零。
数据指针
data的第一个字节的地址。 初始值为零。

构造函数

ImqBinary( );
缺省构造函数。
ImqBinary( ( const ImqBinary & binary );
复制构造函数。
ImqBinary( const void *数据const size_t长度 );
data复制 length 个字节。

重载的 ImqItem 方法

虚拟 ImqBoolean copyOut ( ImqMessage & 消息 );
数据 复制到消息缓冲区,以替换任何现有内容。 将 msg format 设置为 MQFMT_NONE。

请参阅 ImqItem 类方法描述以获取更多详细信息。

虚拟 ImqBoolean pasteIn ( ImqMessage & 消息 );
通过从消息缓冲区传输剩余数据 (替换现有 数据) 来设置 数据

要成功, ImqMessage 格式 必须为 MQFMT_NONE。

请参阅 ImqItem 类方法描述以获取更多详细信息。

对象方法 (公用)

void 运算符 = ( const ImqBinary & 二进制 );
binary复制字节。
ImqBoolean 运算符 == ( const ImqBinary & 二进制 );
将此对象与 binary进行比较。 如果不等于,那么返回 FALSE ,否则返回 TRUE。 如果对象具有相同的 数据长度 且字节匹配,那么这些对象相等。
ImqBoolean copyOut ( void * bufferconst size_t lengthconst char pad = 0);
将最多 length 个字节从 数据指针 复制到 buffer。 如果 数据长度 不足,那么将使用 pad 字节填充 buffer 中的剩余空间。 如果 length 也为零,那么 buffer 可以为零。 length 不得为负数。 如果成功,将返回 TRUE。
size_t dataLength () const ;
返回 数据长度
ImqBoolean setDataLength ( const size_t length );
设置 数据长度。 如果由于此方法而更改了 data length ,那么对象中的数据将处于未初始化状态。 如果成功,将返回 TRUE。
void * dataPointer () const ;
返回 数据指针
ImqBoolean isNull () const ;
如果 data length 为零,或者如果所有 data 字节都为零,那么返回 TRUE。 否则,将返回 FALSE。
ImqBoolean set ( const void * bufferconst size_t length );
buffer复制 length 个字节。 如果成功,将返回 TRUE。

对象方法 (protected)

void clear ();
数据长度 减小为零。

原因码

  • MQRC_NO_BUFFER
  • MQRC_STORAGE_NOT_AVAILABLE
  • MQRC_INCONSISTENT_FORMAT