# PoolAllocator::Contains ```cpp bool Contains(void* ptr) const; ``` 检查给定的指针是否属于此内存池的地址范围。由于池在构造时预分配连续内存,可通过指针地址区间判断所有权。此方法用于调试和内存验证。 **参数:** - `ptr` - 要检查的指针 **返回:** 指针属于此池返回 `true`,否则返回 `false` **复杂度:** O(1) **示例:** ```cpp #include PoolAllocator pool(sizeof(int), 100); void* inside = pool.Allocate(); void* outside = ::operator new(sizeof(int)); if (pool.Contains(inside)) { // inside 属于此内存池,可以安全 Free } if (!pool.Contains(outside)) { // outside 不属于此池,不能调用 pool.Free() ::operator delete(outside); } ``` ## 相关文档 - [PoolAllocator 总览](pool-allocator.md) - 返回类总览