# LinearAllocator **命名空间**: `XCEngine::Memory` **类型**: `class` **头文件**: `XCEngine/Memory/LinearAllocator.h` **描述**: 线性分配器,适合帧分配和临时对象。 ## 概述 `LinearAllocator` 是一种顺序分配器,预分配一个大缓冲区,每次分配从缓冲区起始位置顺序分配,偏移量递增。它不适合需要释放任意块的场景,但分配和清除非常高效,常用于帧分配器。 ## 公共方法 | 方法 | 描述 | |------|------| | [`LinearAllocator`](constructor.md) | 构造线性分配器 | | [`~LinearAllocator`](~linear-allocator.md) | 析构函数,释放底层缓冲区 | | [`Allocate`](allocate.md) | 顺序分配内存 | | [`Free`](free.md) | 无效果(不支持) | | [`Reallocate`](reallocate.md) | 不支持(始终返回 nullptr) | | [`Clear`](clear.md) | 清空所有分配 | | [`GetMarker`](get-marker.md) | 获取当前位置标记 | | [`SetMarker`](set-marker.md) | 回滚到指定标记位置 | | [`GetUsedSize`](get-used-size.md) | 获取已使用字节数 | | [`GetCapacity`](get-capacity.md) | 获取总容量 | | [`GetName`](get-name.md) | 获取分配器名称 | | [`GetTotalAllocated`](get-total-allocated.md) | 获取累计分配字节数 | | [`GetTotalFreed`](get-total-freed.md) | 获取累计释放字节数 | | [`GetPeakAllocated`](get-peak-allocated.md) | 获取峰值分配字节数 | | [`GetAllocationCount`](get-allocation-count.md) | 获取分配次数 | ## 相关文档 - [Memory 模块总览](../memory.md) - 返回模块总览 - [IAllocator](../allocator/allocator.md) - 分配器接口