“布局与C兼容”是什么意思?

时间:2011-03-16 18:21:56

标签: c++ c stl vector

据说stl向量是“与C布局兼容”。 我在哪里可以找到“布局与C兼容”的定义?

2 个答案:

答案 0 :(得分:8)

这意味着,只要向量不为空,&vector.front()将为您提供指向连续对象数组的指针,这些对象可以传递给期望此类数组的C API。

答案 1 :(得分:4)

这意味着向量的内容将以与在相同类型的C数组中相同的方式布局在内存中。这意味着如果你有一个C函数希望接收一个指向某种类型数组的指针,你可以使用一个向量并将该指针传递给向量的第一个元素。