在C++中,data()
函数通常用于从容器(如std::vector
、std::string
或std::array
)中获取指向底层数据的指针
data()
函数获取指向底层数据的指针。以下是一个使用std::vector
的示例:
#include<iostream>
#include<vector>
int main() {
// 创建一个包含一些整数的向量
std::vector<int> vec = {1, 2, 3, 4, 5};
// 使用 data() 函数获取指向底层数据的指针
int* ptr = vec.data();
// 使用指针访问和操作向量中的元素
for (size_t i = 0; i < vec.size(); ++i) {
std::cout << "Element " << i << ": " << *(ptr + i)<< std::endl;
}
// 修改向量中的第一个元素
*ptr = 42;
// 输出修改后的向量
std::cout << "Modified vector: ";
for (const auto& elem : vec) {
std::cout<< elem << ' ';
}
std::cout<< std::endl;
return 0;
}
这个程序首先创建了一个包含整数的std::vector
,然后使用data()
函数获取指向底层数据的指针。接着,程序使用指针访问和操作向量中的元素,并在修改后输出向量。
请注意,这个示例仅适用于支持data()
函数的容器。对于不支持data()
函数的容器,您需要使用其他方法来获取指向底层数据的指针。