假设我有一个这样的结构:
struct vertexNodeInfo
{
unsigned char level;
int node;
double leaf;
};
如果我有这个:
vector<vertexNodeInfo> node;
在任何 .size
之前,空 vector 有多大(内存方面,不是 push_back
) ?它的大小是否与 vector<int> node;
完全相同(同样,就内存而言)? ?
最佳答案
没有要求。更重要的是,这是一个表述不当的问题。
.size
vector 的大小为 0
,因为它没有元素。
sizeof
不影响元素的数量,并且通常大到足以包含一个或两个指向该类型的指针(它们本身的大小可能会有所不同,因此不能保证 sizeof(vector<vertexNodeInfo>)
和 sizeof(vector<int>)
相等),大小和容量。
关于c++ - 空 vector 是其结构的大小吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19740287/