int main() { std::vector<int> vec = {1, 2, 3, 4, 5}; // 获取第一个元素的指针 int* ptr = vec.data(); // 打印第一个元素 std::cout << "First element: " << *ptr << std::endl; return 0; } ``` 在上面的示例中,`vec.data()` 返回指向 `vec` 内部数据的指针,然后将其...
vector<int>a(n);//初始化n个元素的向量vector<int>a(n,x);//初始化n个元素的向量,每个元素是xvector<int>a={1,2,3,4,5};//支持数组声明的方法,自动创建//二维vector<vector<int>>matrix(n,vector<int>(m));//m*n的矩阵 其他的构造方式 拷贝构造:传入其他vector引用 区间拷贝:传入两个迭代器 ...
1、迭代器是指针的抽象,标准库为每一种标准容器(包括vector)定义了一种迭代器,如: vector<int>::iterator iter; 1. 这条语句定义了一个名为iter的变量,它的数据是由vector<int>定义的iteretor类型,而指针则是直接初始化为指向某一数组或单个对象的指针,还可以指向函数,而迭代器不行; 2、每种容器都定义了一...
问题的意思就是,假如对于定义一个一维数组:int a[10];编译系统通过int知道了size,于是可以操纵存储空间.若定义一个二维数组,int a[8][10];编译系统通过定义中的第一维大小"[10]"知道a是一个数组,每个元素大小是10*sizeof(int),所以可以操作存储空间.而对于vector< vector<int> >来说,外层的vector可以动态...
3.2 vector < int > myVector = {1,2,3,4,5}; 3.3 vector < int > myVector(num); 或者 vector < int > myVector(n,num); 3.4 vector < int > myVector(testVector); 或者 vector < int > myVector = testVector; 3.5使用指针初始化一维vector; 4.初始化二维 vector 对象: 4.1 vector < ve...
vector<int*>*kkkk;//int指针的向量指针(对比int*p理解,指针变量前面的“*”表示该变量的类型为指针变量,p是指针变量名,而不是*p) vector 不是一种数据类型,而只是一个类模板,可用来定义任意多种数据类型。vector 类型的每一种都指定了其保存元素的类型。因此,vector<int>和 vector<string> 都是数据类型。
int max_size() const:返回最大可允许的vector元素数量值 7.其他函数 void swap(vector&):交换两个同类型向量的数据 void assign(int n,const T& x):设置向量中前n个元素的值为x void assign(const_iterator first,const_iterator last):向量中[first,last)中元素设置成当前向量元素 ...
vector < int > myVector (*p, *q); 使用另外一个数组的指针来初始化v,这里既可以使用vector的指针,也可以使用普通数组的指针。 intarr[5] = {1,2,3,4,5}; vector<int> myVector = {1,2,3,4};//输出内容是:1 2 3vector<int>vector1(arr, arr +3);for(inti =0; i < vector1.size()...
//首先定义一个std::vector<int>并插入一个数字 std::vector<int> v;v.push_back(123);//然后...
ptr = vec.data(); // 获取vector的数据指针 // 输出指针指向的值 for (int i = 0...