如何发现std :: vector的大小/长度(以字节为单位)?

Vah*_*ian 22 c++ vector std

我有一个向量,我想写它并将其读取到一个文件但是不可能使用sizeof运算符确定向量的逻辑大小.

那我该怎么办?

izo*_*ica 37

c ++ std :: vector有一个size()返回其大小的方法.

编辑:因为我现在得到它你需要计算给定的矢量使用的内存.您不能使用sizeof,因为向量使用动态内存并仅存储包含其元素的动态数组的指针.所以我最好的建议是将每个元素所需的内存乘以元素的数量.请注意,如果对象存储指向某些动态分配对象的指针,则无法再次执行此操作 - 您将再次分别计算其大小.

在我知道的c ++中,没有简单的方法来计算内存中的字节向量大小.