当前位置 : 主页 > 编程语言 > c语言 >

c++ vector对象相关总结

来源:互联网 收集:自由互联 发布时间:2021-05-09
下面随笔讲解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对象的资料请关注自由互联其它相关文章!

网友评论