Files
XCSDD/docs/api/containers/array/constructor.md

45 lines
1.1 KiB
Markdown
Raw Normal View History

# Array::Array()
```cpp
Array() = default;
explicit Array(size_t capacity);
Array(size_t count, const T& value);
Array(std::initializer_list<T> init);
```
构造一个 `Array<T>` 实例。
**默认构造**:构造空数组,不分配内存。
**容量构造**:预分配指定容量的内存,但不设置元素数量。适用于已知大致元素数量时减少重新分配。
**数量构造**:创建 `count` 个元素,每个元素都是 `value` 的拷贝。使用拷贝构造,不调用默认构造。
**初始化列表构造**:使用 C++ initializer_list 语法创建数组。
**参数:**
- `capacity` - 预分配的容量大小
- `count` - 元素数量
- `value` - 每个元素的初始值
- `init` - initializer_list 初始化列表
**示例:**
```cpp
// 默认构造
Containers::Array<int> arr1;
// 预分配容量(不设置元素)
Containers::Array<int> arr2(100);
// 创建 10 个元素,初始值为 42
Containers::Array<int> arr3(10, 42);
// 使用 initializer_list
Containers::Array<int> arr4 = {1, 2, 3, 4, 5};
```
## 相关文档
- [Array 总览](array.md) - 返回类总览