在c++11中,vector 增加了data()的用法,它返回內(nèi)置vecotr所指的數(shù)組內(nèi)存的第一個(gè)元素的指針。
向量(vector)“ v”和指針“ p”。語法為:
data_type *p=v.data();
它不包含任何參數(shù)。
它返回一個(gè)指向數(shù)組的指針。
讓我們看一個(gè)簡(jiǎn)單的實(shí)例。
#include <iostream>
#include<vector>
using namespace std;
int main()
{
vector<int> v{10,20,30,40,50};
int *k=v.data();
for(int i=0;i<v.size();i++)
cout<<*k++<<" ";
return 0;
}輸出結(jié)果:
10 20 30 40 50
讓我們看一個(gè)簡(jiǎn)單的實(shí)例。
#include <iostream>
#include<vector>
using namespace std;
int main()
{
vector<string> v{"C","C++","Java",".Net"};
string *k=v.data();
for(int i=0;i<v.size();i++)
cout<<*k++<<" ";
return 0;
}輸出結(jié)果:
C C++ Java .Net
在本示例中,k是指向向量v的元素的字符串類型的指針。