gpt4 book ai didi

c++ - C++中大尺寸的堆栈分配

转载 作者:行者123 更新时间:2023-11-28 07:11:42 27 4
gpt4 key购买 nike

我正在尝试使用 Direct3D 9 加载大量基元,因此我需要将大量结构传递给虚拟缓冲区。但是,如果我使用 malloc() 执行此操作,我的 sizeof() 函数将返回错误值(始终为 4)。如果我通常分配堆栈内存 (array[number]),堆栈可能会因为元素数量而溢出。还有其他选择吗?如何分配可以加载尽可能多数据的堆栈内存?

附言我不会将它们全部绘制到屏幕上,但我仍然需要它们的顶点信息。

最佳答案

当与指针一起使用时,sizeof 运算符返回指针的大小,而不是它指向的内容。

当您动态分配内存时(在 C++ 中使用 new 而不是 malloc),您需要自己跟踪条目的数量。或者更好的是,使用例如std::vector .

关于c++ - C++中大尺寸的堆栈分配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20868867/

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