vector<int> v1(10);//为向量v1赋值10个0vector<int> v3(10,100);//为向量v3赋值10个100for(inti=1; i<8; ++i) { v.push_back(i); v1.push_back(i); } vector<int>::iterator it = v.begin();//迭代器,指向向量头部cout<<"v =";while(it!=v.end()) { cout<<*it<<"";++it;...
这个例子中,我们声明了一个数组vector,并为其初始化了数值。而后我们又声明了一个指针p,且将vector数组的首地址赋值给了p,实际上,这个时候对于指针p指向的地址的内容的改变,就会直接表现在数组vector中了。仔细查看这份示例代码都做了什么,推理一下程序运行后会有什么样的输出?可以看到,对于指针p的取值以及解...
vector <Elem> c(n) //创建一个vector,含有n个数据,数据均已缺省构造产生。 vector <Elem> c(n, elem) //创建一个含有n个elem拷贝的vector。 vector <Elem> c(beg,end) //创建一个以[beg;end)区间的vector。 c.~ vector <Elem>() //销毁所有数据,释放内存。 operator[] //返回容器中指定位置的...
vector<int> v1;//创建一个空的向量v1 vector<int> v2(10);//创建一个向量v2,其已开辟10个元素的空间,相当于int v[10]; vector<int> v3(10,5);//创建一个向量v3,其已开辟10个元素的空间并全部赋值为5 vector<int> v4(v3.begin(),v3.end());//创建一个向量v3,其内容为向量v3的内容 vector...
Vector &operator=(constT &x)//拷贝赋值{if(this!= &x) { Vector{x}.swap(*this); }return*this; } Vector &operator=(T &&x)noexcept//移动赋值{if(this!= &x) { Vector{std::move(x)}.swap(*this); }return*this; } Vector &operator=(std::initializer_list<T> li)//初始化列表赋值{...
-指定大小初始化:vectorv(10);//创建一个包含10个int类型元素的vector -拷贝初始化:vector v1{1,2,3};//创建一个包含3个int类型元素的vector,并将其赋值为{1,2,3} vector v2(v1); //创建一个与v1相同的vector,并将v1中的元素拷贝到v2中 3. stl vector的常用操作 -添加元素:vector提供了p...
string& assign(int n,char c); //用n个字符c赋值给当前字符串 1. 2. 3. 4. 5. 6. 7. 上面部分基于运算符=重载,下面基于叫assign的成员函数。 string的赋值方式很多,operator=这种方式是比较实用的。 4.字符串拼接 string& operator+=(const char* str); //重载+=,当前字符串后拼接一个C语言风格...
注意没有如下形式的数组赋值: void f() { v4={‘c’,’d’,0}; //错误:不是数组赋值 } 如果你想这样的复制的话,请使用 vector(16章第三节) 或者 valarray(22章第四节)。 字符数组可以方便地采用字符串直接初始化(参考第五章 2.2小节) 译注: 就是 这样啦 char alpha []=”abcdefghijklmn”; ...
除此之外,还有clear()方法,清空vector中的所有元素,pop_back()方法,删除末尾的元素。 代码语言:javascript 复制 #include<stdio.h>#include<vector>using namespace std;intmain(){vector<int>v;for(int i=0;i<10;i++){v.push_back(i);}for(vector<int>::size_type ix=0;ix!=v.size();ix++){pr...