C++ 类对象数组初始化
时间: 2024-09-24 10:00:18 浏览: 33
在C++中,类对象数组的初始化通常涉及创建一系列同类型的类对象,并为它们分配内存空间。你可以通过几种方式进行初始化:
1. **直接初始化**:
```cpp
MyClass myArray[5] = {MyClass("Object1"), MyClass("Object2"), MyClass("Object3"), MyClass("Object4"), MyClass("Object5")};
```
这里直接为每个元素赋予初始值。
2. **构造函数列表**:
```cpp
MyClass myArray[5];
for (int i = 0; i < 5; i++) {
myArray[i] = MyClass{"ConstructorArgument" + std::to_string(i)};
}
```
使用循环结构,通过构造函数为每个元素设置值。
3. **静态初始化表**(如果类支持):
```cpp
MyClass myArray[] = {
{"StaticObject1"},
{"StaticObject2"},
//...
};
```
如果类提供了一个默认无参构造函数,可以直接使用静态初始化表。
4. **使用`std::array`或`std::vector`**:
```cpp
std::vector<MyClass> myVector;
myVector.push_back(MyClass("Object1"));
//...
```
利用容器自动管理内存,避免手动指定大小。
阅读全文