c++ 定义一个结构体 成员变量为动态分配的不定长vector
时间: 2023-07-26 07:49:49 浏览: 97
c++结构体的定义和使用
可以使用C++标准库中的vector来实现结构体成员变量为动态分配的不定长vector,示例代码如下:
```c++
#include <vector>
struct MyStruct {
std::vector<int> arr; // 成员变量为vector
MyStruct(int s) { // 构造函数中初始化vector大小
arr.resize(s);
}
};
```
在使用时,先创建结构体对象,并指定vector大小,然后就可以通过下标访问vector元素了,示例代码如下:
```c++
int main() {
MyStruct ms(10); // 创建结构体对象,并指定vector大小为10
for (int i = 0; i < ms.arr.size(); i++) {
ms.arr[i] = i; // 访问vector元素
}
return 0;
}
```
由于vector在析构时会自动释放内存,因此不需要手动调用析构函数。
阅读全文