vector :: data()是“ vector”头文件的库函数,用于访问矢量元素,它返回一个指针,该指针指向矢量内部用于存储元素的内存数组。
注意:要使用向量,请包含<vector>标头。
vector :: data()函数的语法
vector::data();
参数:无–不接受任何内容。
返回值: value_type * –返回指向向量内部使用的数组中第一个元素的指针。
示例
Input: vector<int> vector1{ 1, 2, 3, 4, 5 }; //声明一个相同类型的指针 int* ptr = vector1.data(); Accessing elements: cout << *ptr << endl; ptr++; cout << *ptr << endl; Output: 1 2
//C ++ STL程序演示示例 //vector :: data()函数 #include <iostream> #include <vector> using namespace std; int main(){ vector<int> v1{ 10, 20, 30, 40, 50 }; //声明一个相同类型的指针 int* ptr = v1.data(); //打印所有元素 //使用vector :: data()函数 cout << "all elements of vector v1..." << endl; for (int i = 0; i < v1.size(); i++) { cout << "element at index " << i << " : " << *ptr << endl; //指针增加 ptr++; } //更新一些元素 //再次初始化指针 ptr = v1.data(); *(ptr + 0) = 100; *(ptr + 1) = 200; *(ptr + 2) = 300; //更新后,打印所有元素 //使用vector :: data()函数 cout << "all elements of vector v1..." << endl; for (int i = 0; i < v1.size(); i++) { cout << "element at index " << i << " : " << *ptr << endl; //指针增加 ptr++; } return 0; }
输出结果
all elements of vector v1... element at index 0 : 10 element at index 1 : 20 element at index 2 : 30 element at index 3 : 40 element at index 4 : 50 all elements of vector v1... element at index 0 : 100 element at index 1 : 200 element at index 2 : 300 element at index 3 : 40 element at index 4 : 50
参考:C ++ vector :: data()