# String::Reserve / Resize ```cpp void Reserve(SizeType capacity); void Resize(SizeType newSize); void Resize(SizeType newSize, char fillChar); ``` 管理字符串的内存和大小。 **参数:** - `capacity` - 要预留的最小容量 - `newSize` - 新的字符串长度 - `fillChar` - 当扩展字符串时用于填充新增位置的字符,默认为 '\0' **返回:** 无 **复杂度:** - `Reserve`:最坏 O(n),仅在需要扩展容量时复制数据 - `Resize`:O(n),当 newSize > Length 时可能需要扩展 **示例:** ```cpp #include "XCEngine/Containers/String.h" #include int main() { XCEngine::Containers::String s("Hi"); // Reserve - 预分配内存 s.Reserve(100); std::cout << "After Reserve(100), Capacity: " << s.Capacity() << std::endl; // 输出: After Reserve(100), Capacity: 100 // Resize - 缩短字符串 s.Resize(1); std::cout << "After Resize(1): " << s.CStr() << std::endl; // 输出: H // Resize - 扩展字符串,用 'X' 填充 s.Resize(5, 'X'); std::cout << "After Resize(5, 'X'): " << s.CStr() << std::endl; // 输出: HXXXX return 0; } ``` ## 相关文档 - [String 总览](string.md) - 返回类总览 - [Length / Capacity](size.md) - 获取长度和容量 - [Clear](clear.md) - 清空字符串