Java程序员学习C++之Vector
2015-07-17 16:37
405 查看
#include <iostream> #include <vector> #include <algorithm> using namespace std; typedef vector<int> MyVector; int main() { //std::vector<int> c; MyVector c; c.reserve(40);//初始预留一定的空间,减少分配新空间->复制->删除旧空间的效率消耗 //MyVector c(40,1);//预留一定的空间,并且赋初始值 c.capacity();//容量 for (int i = 0; i < 10;i++) { c.push_back(i); } /* c.size()返回无符号的int,会提示类型不匹配(“<”: 有符号/无符号不匹配) for (int i = 0; i < c.size();i++) { cout << "c[" << i << "]=" << c[i] << endl; } */ for (MyVector::size_type i = 0; i < c.size(); i++) { cout << "c[" << i << "]=" << c[i] << endl; } cout << "========================"<< endl; //迭代器的方式 for (MyVector::iterator itr = c.begin(); itr != c.end();++itr) { //distance计算两者偏移 cout << "c[" << distance(c.begin(),itr) << "]=" << *itr << endl; } //乱序 random_shuffle(c.begin(), c.end()); for (MyVector::size_type i = 0; i < c.size(); i++) { cout << c[i]<<" "; } cout << endl; random_shuffle(c.begin()+3, c.end()); for (MyVector::size_type i = 0; i < c.size(); i++) { cout << c[i] << " "; } cout << endl; return 0; }
相关文章推荐
- C语言内存地址基础
- 利用递归逆序输出字符串
- C语言中的次方运算
- TIOBE 2015年7月编程语言排行榜:C++的复兴
- 让android项目支持boost 支持c++11
- 【C/C++】知识点
- 《Effective C++》——条款17:以独立语句将newed对象置入智能指针
- C++排序方法汇总
- C++ map 浅析
- C++中的类型转换
- C++中的类型转换
- C++它 typedef void *HANDLE
- C语言中的struct用法
- C++ I/O
- poj 3073 Spam(注意转义字符‘\’+dp)
- C++学习心得(5)继承与派生
- win8.1下无法运行vc++6.0的解决方法
- C++二叉树笔试题
- c++内存泄漏
- c++ 如何输出大数不用科学计数法 和如何保留几位小数输出