- 论坛徽章:
- 0
|
程序连接时出现错误,昨天已经找了一天了,帮忙看看吧,急~~`
原帖由 "dragonq" 发表:
还有个问题,就是使用vector用申请空间吗?
我想不用申请,直接push_back就可以吧
那么,用完之后是否需要手工释放,delete(vector)?
vector和数组用法上没有多大区别,想下面这样的用法,
应该不用自己处理分配和回收的,下面有段代码,你看看吧,好运。
- #include <iostream>;
- #include <vector>;
- #include <algorithm>;
- using namespace std;
- int main()
- {
- vector<int>; v1;
- vector<int>; v2(10);
- //v1.assign(2,9);
- vector<int>; v3(5,1);
- v1.assign(v3.begin(),v3.end());
- copy(v1.begin(),v1.end(),ostream_iterator<int>;(cout," "));
- cout<<endl;
- copy(v2.begin(),v2.end(),ostream_iterator<int>;(cout," "));
- cout<<endl;
- copy(v3.begin(),v3.end(),ostream_iterator<int>;(cout," "));
- cout<<endl;
- int mm[8];
- for(int i=0;i<=7;i++)
- mm[i]=i;
- vector<int>; v4(mm,mm+sizeof(mm)/sizeof(mm[0]));//将数组给向量的方法
- copy(v4.begin(),v4.end(),ostream_iterator<int>;(cout," "));
- cout<<endl;
- cout <<v4.size()<<endl;
- cout <<v4.empty()<<endl;
- cout <<v4.max_size()<<endl;
- v4.push_back(5);
- copy(v4.begin(),v4.end(),ostream_iterator<int>;(cout," "));
- cout<<endl;
- vector<int>;::iterator p=v4.begin();
- v4.erase(p+4);//随机存储跌代器操作
- copy(v4.begin(),v4.end(),ostream_iterator<int>;(cout," "));
- cout<<endl;
- //把vector当做数组使用
- vector<char>; v5;
- v5.resize(12);
- strcpy(&v5[0],"hello,world");
- printf("%s\n",&v5[0]);
- //////////////////////////////////////////
- cout << v5[7]<<endl;
- cout <<v5.at(10)<<endl;
- return 0;
- }
复制代码 |
|