gpt4 book ai didi

c++ - 在结构中制作某个结构的数组。

转载 作者:太空狗 更新时间:2023-10-29 23:41:45 24 4
gpt4 key购买 nike

我有一个叫做场景的结构。在称为场景的结构中,我需要创建一个包含其他场景对象的数组。这可能吗?

最佳答案

不,因为之前 scene是完全定义的,编译器不知道它有多大,也不知道该用多大的数组。

但是,您可以有一个指向scene指针 数组,因为指针(不包括指向成员和其他奇怪的指针 - 感谢 Nawaz)都是相同的大小:

class scene {
scene* array[20];
};

或者,您可以存储一个指针,该指针将指向分配给 new[] 的动态数组。并用 delete[] 解除分配:

class scene {
scene() : array(new scene[20]) { }
~scene() { delete[] array; }

scene* array;
};

或者更进一步,存储一个 vector<scene> , 一个 vectorscene小号:

class scene {
vector<scene> array;
};

vector ,您将获得一个无需手动内存管理的可调整大小的数组。

关于c++ - 在结构中制作某个结构的数组。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8369898/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com