Files
XCEngine/docs/api/containers/array/constructor.md
ssdfasd 5c3566774b docs: 更新 containers 和 threading 模块文档
- containers: 更新 string 类的多个方法文档
- threading: 更新 mutex 和 task-group 方法文档
2026-03-26 01:59:14 +08:00

1.3 KiB
Raw Blame History

Array::Array()

Array() = default;
explicit Array(size_t capacity);
Array(size_t count, const T& value);
Array(std::initializer_list<T> init);

构造一个 template<typename T> XCEngine::Containers::Array<T> 实例。

默认构造构造空数组不分配内存。数组初始为空容量为0。

容量构造explicit:预分配指定容量的内存,但不设置元素数量。适用于已知大致元素数量时减少重新分配。

数量构造:创建 count 个元素,每个元素都是 value 的拷贝。使用拷贝构造,不调用默认构造。

初始化列表构造:使用 C++ initializer_list 语法创建数组。

参数:

  • capacity - 预分配的容量大小
  • count - 元素数量
  • value - 每个元素的初始值
  • init - initializer_list 初始化列表

注意: Array(size_t capacity) 是 explicit 的,防止隐式转换。

示例:

#include <XCEngine/Core/Containers/Array.h>

using namespace XCEngine::Containers;

// 默认构造
Array<int> arr1;

// 预分配容量(不设置元素)
Array<int> arr2(100);

// 创建 10 个元素,初始值为 42
Array<int> arr3(10, 42);

// 使用 initializer_list
Array<int> arr4 = {1, 2, 3, 4, 5};

相关文档