可能重复:
从std:vector获取数组
我一直在阅读这个问题的答案,并发现它们很有用,但是如何使用float类型实现相同的功能呢?
可能重复:
从std:vector获取数组
我一直在阅读这个问题的答案,并发现它们很有用,但是如何使用float类型实现相同的功能呢?
同样的事情。
std::vector<float> v(10);
float *p = &v[0];
std::vector<float> v;
v.push_back(1.2);
v.push_back(3.4);
// &v[0] is a pointer to the first element of the vector.
float* array_sort_of = &v[0];
for (size_t i = 0; i < 2; i++) {
std::cout << array_sort_of[i] << " ";
}
// Output: 1.2 3.4
float* arr = v.data();
- x4444&v[0]
,但是那个也可以。 - Lightness Races in Orbitstd::vector::data
是一个标准的方法,用于获取指向 vector 内部使用的内存数组的直接指针(自 C++11 起)。http://www.cplusplus.com/reference/vector/vector/data/。该方法被添加到 C++11 中是有原因的。如果您正在使用现代 C++ 进行编程,我建议使用标准的方法来完成任务。 - x4444