gpt4 book ai didi

C++:如何在堆栈上创建对象数组?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:53:56 25 4
gpt4 key购买 nike

考虑以下 Java 代码。

int N = 10;
Object obj[] = new Object[N];
for (int i = 0; i < N; i++) {
int capacity = 1000 * i;
obj[i] = new ArrayList(capacity);
}

因为在Java中,所有的对象都存在于Heap中,数组不存在包含对象本身,但包含对对象的引用。还,数组本身也是一个对象,因此它存在于堆中。

C++ 中的等价物是什么,但保留数组和对象堆栈,尽可能避免需要 new 和 delete ?

编辑:更改代码以使用自定义构造函数。

最佳答案

简单声明

Object array_of_objects[10];

在 C++ 中,在堆栈上创建 10 个 Object 类型的默认构造对象。

如果您想使用非默认构造函数,那在 C++ 中就没那么容易了。可能有一种新的放置方式,但我无法立即告诉你。

编辑:链接到 StackOverflow 上的其他问题this question 的回答中解释了如何为数组使用新放置。在 StackOverflow 上。

关于C++:如何在堆栈上创建对象数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/320506/

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