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