Files
XCEngine/docs/api/containers/string/constructor.md
ssdfasd a9f882f233 docs: 修正 API 文档准确性 (第二轮检查)
修复的问题:
- math: 修复 Quaternion::Normalize 链接错误
- containers: HashMap 迭代器示例使用不存在的 cbegin/cend,删除冗余构造函数声明
- core: RefCounted 析构函数访问级别修正 (protected)
- debug: LogLevelToString 示例返回值大小写修正
- memory: 修正 LinearAllocator::Reallocate 返回 nullptr,ProxyAllocator 统计描述,头文件路径 IAllocator.h -> Allocator.h
- resources: Texture::Create mipLevels 参数描述修正
- rhi: 修复多处链接错误,新增缺失的方法文档
- threading: TaskSystem 配置项未实现状态标注,Wait 方法空实现标注
2026-03-19 00:31:14 +08:00

49 lines
1.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# String::String
```cpp
String();
String(const char* str);
String(const char* str, SizeType len);
String(const String& other);
String(String&& other) noexcept;
```
构造 String 对象。提供多种构造方式以适应不同的使用场景。
**参数:**
- `str` - 以 null 结尾的 C 字符串
- `len` - 要复制的字符数量
- `other` - 另一个 String 对象(用于拷贝构造或移动构造)
**返回:**
**复杂度:**
- 默认构造O(1)
-`const char*` 构造O(n),其中 n 为字符串长度
- 拷贝构造O(n)
- 移动构造O(1)
**示例:**
```cpp
#include "XCEngine/Containers/String.h"
#include <iostream>
int main() {
XCEngine::Containers::String s1; // 默认构造
XCEngine::Containers::String s2("hello"); // 从 C 字符串构造
XCEngine::Containers::String s3("world", 3); // 从 C 字符串前 n 个字符构造
XCEngine::Containers::String s4(s2); // 拷贝构造
XCEngine::Containers::String s5(std::move(s4)); // 移动构造
std::cout << s2.CStr() << std::endl; // 输出: hello
std::cout << s3.CStr() << std::endl; // 输出: wor
std::cout << s4.CStr() << std::endl; // 输出: hello
std::cout << s5.CStr() << std::endl; // 输出: hello
return 0;
}
```
## 相关文档
- [String 总览](string.md) - 返回类总览