AfxIsMemoryBlock

测试内存地址以确保将它代表由 new诊断分配生成的一个当前活动的存储区。

BOOL AfxIsMemoryBlock( 
   const void* p, 
   UINT nBytes, 
   LONG* plRequestNumber = NULL  
);

参数

  • p
    指向测试的内存块。

  • nBytes
    包含内存块的长度(以字节为单位)。

  • plRequestNumber
    指向使用存储区分配的次序号填充的 long 整数,如果它不表示一个当前活动的存储区,则为0。

返回值

如果存储区当前被分配且长度是正确的,则为非零;否则为 0。

备注

它也针对原始的已分配大小检查指定的范围。 如果函数返回非零,则分配序号返回到 plRequestNumber中。 此数字表示块相对于其他 new 分配的分配顺序。

示例

CAge* pcage = new CAge(21); // CAge is derived from CObject.
ASSERT(AfxIsMemoryBlock(pcage, sizeof(CAge)));

要求

Header: afx.h

请参见

参考

AfxIsValidAddress

概念

MFC 宏和全局函数