- 重组文档目录结构: 每个模块的概述页移动到模块子目录 - 重命名 index.md 为 main.md - 修正所有模块文档中的错误: - math: FromEuler→FromEulerAngles, TransformDirection 包含缩放, Box 是 OBB, Color::ToRGBA 格式 - containers: 新增 operator==/!= 文档, 补充 std::hash DJB 算法细节 - core: 修复 types 链接错误 - debug: LogLevelToString 返回大写, timestamp 是秒, Profiler 空实现标注, Windows API vs ANSI - memory: 修复头文件路径, malloc vs operator new, 新增方法文档 - resources: 修复 Shader/Texture 链接错误 - threading: TaskSystem::Wait 空实现标注, ReadWriteLock 重入描述, LambdaTask 链接 - 验证: fix_links.py 确认 0 个断裂引用
40 lines
953 B
Markdown
40 lines
953 B
Markdown
# Array::operator[]
|
|
|
|
```cpp
|
|
T& operator[](size_t index);
|
|
const T& operator[](size_t index) const;
|
|
```
|
|
|
|
按下标访问数组元素,不进行边界检查。
|
|
|
|
**行为:**
|
|
- 返回指定索引处元素的引用
|
|
- 不进行下标越界检查,性能最优
|
|
- 可用于读取和修改元素(非常量版本)
|
|
|
|
**参数:**
|
|
- `index` - 元素下标,从 0 开始
|
|
|
|
**返回:** 元素的引用(常量版本返回常量引用)
|
|
|
|
**复杂度:** O(1)
|
|
|
|
**线程安全:** ❌ 访问元素期间不可并发修改
|
|
|
|
**注意:** 不会进行边界检查。如果 `index >= Size()`,行为未定义。如需边界检查,请使用 `At()` 方法(如果存在)或自行检查。
|
|
|
|
**示例:**
|
|
|
|
```cpp
|
|
Containers::Array<int> arr = {10, 20, 30};
|
|
|
|
int first = arr[0]; // first == 10
|
|
int last = arr[2]; // last == 30
|
|
|
|
arr[1] = 25; // arr 现在是 {10, 25, 30}
|
|
```
|
|
|
|
## 相关文档
|
|
|
|
- [Array 总览](array.md) - 返回类总览
|