Wil*_*man 2 c++ memory arrays struct stdvector
我有很多大型的结构数组,并且数组的大小很少会在最大大小上发生变化,当它出现时,它是可以接受的.
我想我应该有一个大的分配块,我可以继续编写并重写以下结构:
struct S{
unsigned int A;
unsigned int B;
};
Run Code Online (Sandbox Code Playgroud)
在内存中,其中3个结构的数组应具有以下布局:
A,B,A,B,A,B.
Run Code Online (Sandbox Code Playgroud)
并不是:
*A,*B,*A,*B,*A,*B.
Run Code Online (Sandbox Code Playgroud)
也不应该是链表,因为我不需要知道一个条目何时结束而下一个条目何时开始.我的所有条目都是相同的大小,并且永远不会超过我在大块中分配的内容.还有大量的条目,因此每个元素的开销很小很重要.但是,每个数组/向量/列表的一些开销很好.
我已经看到了使用的建议std::vector,但从我收集的内容来看,每个元素都有一些开销,在这种情况下我不需要.
我应该在这里使用什么?如果动态数组合适,我可以:
S* arr = new S[x];
Run Code Online (Sandbox Code Playgroud)
还有这个在调试器中显示为一个数组?
| 归档时间: |
|
| 查看次数: |
93 次 |
| 最近记录: |