下面随笔讲解c++ vector对象。 vector对象 为什么需要vector? 封装任何类型的动态数组,自动创建和删除。 数组下标越界检查。 封装的如ArrayOfPoints也提供了类似功能,但只适用于一种类型
下面随笔讲解c++ vector对象。
vector对象
为什么需要vector?
- 封装任何类型的动态数组,自动创建和删除。
- 数组下标越界检查。
- 封装的如ArrayOfPoints也提供了类似功能,但只适用于一种类型的数组。
vector对象的定义
vector<元素类型> 数组对象名(数组长度);
例:
vector<int> arr(5)
建立大小为5的int数组
vector对象的使用
对数组元素的引用
与普通数组具有相同形式:
vector对象名 [ 下标表达式 ]
vector数组对象名不表示数组首地址
- 获得数组长度
- 用size函数
数组对象名.size()
//例 vector应用举例 #include <iostream> #include <vector> using namespace std; //计算数组arr中元素的平均值 double average(const vector<double> &arr) { double sum = 0; for (unsigned i = 0; i<arr.size(); i++) sum += arr[i]; return sum / arr.size(); } int main() { unsigned n; cout << "n = "; cin >> n; vector<double> arr(n); //创建数组对象 cout << "Please input " << n << " real numbers:" << endl; for (unsigned i = 0; i < n; i++) cin >> arr[i]; cout << "Average = " << average(arr) << endl; return 0; }
//基于范围的for循环配合auto举例 #include <vector> #include <iostream> int main() { std::vector<int> v = {1,2,3}; for(auto i = v.begin(); i != v.end(); ++i) std::cout << *i << std::endl; for(auto e : v) std::cout << e << std::endl; }
以上就是c++ vector对象相关总结的详细内容,更多关于c++ vector对象的资料请关注自由互联其它相关文章!