数组

C++中的数组

C++中的数组与C中的数组非常相似,但C++提供了一些额外的功能:

  1. 声明与初始化 声明和初始化与C语言基本相同:

    int arr[5] = {1, 2, 3, 4, 5};  // 静态数组的初始化
  2. STL中的数组 C++提供了std::arraystd::vector来克服C风格数组的限制:

    • std::array:用于固定大小的数组,它是模板类,数组大小是编译时常量。

      #include <array>
      std::array<int, 5> arr = {1, 2, 3, 4, 5};  // 声明并初始化

      该数组支持标准容器接口,例如size()

      size_t size = arr.size();
    • std::vector:支持动态调整大小的数组,可以在运行时添加或删除元素。

      #include <vector>
      std::vector<int> vec = {1, 2, 3, 4, 5};
      vec.push_back(6);  // 添加新元素
  3. 数组的范围循环(Range-based for loop) 在C++11及更高版本中,可以使用范围循环轻松遍历数组:

    for (int x : arr) {
        std::cout << x << std::endl;
    }

总结

  • 在C语言中,数组的大小是固定的,无法动态调整。

  • 在C++中,除了使用C风格的数组外,还可以使用std::array(固定大小)和std::vector(动态大小)来处理数组,提供了更多的灵活性和功能。

Last updated