📜  具有可变大小的 c++ 数组 - C++ (1)

📅  最后修改于: 2023-12-03 15:22:34.829000             🧑  作者: Mango

C++中的具有可变大小的数组

简介

在C++中,数组是一种常见的数据结构,可以用来存储多个相同类型的变量。在声明数组时,我们需要指定数组的大小,如int arr[10]表示声明一个包含10个整数的数组。但是,有时候我们需要创建一个大小可变的数组,这时可以使用C++中的可变大小数组。

C++中的可变大小数组

C++中有两种实现可变大小数组的方式:

动态内存分配

动态内存分配是一种从操作系统中请求内存块的方法。我们可以使用new运算符在程序运行时动态地分配内存。使用动态分配的数组,不需要事先知道数组的大小,可以在运行时根据需要分配所需的大小。以下是一个动态分配大小的数组的示例:

int size;
cout << "Enter size of dynamic array: ";
cin >> size;
int* arr = new int[size];

//使用数组

delete[] arr;  //在使用完数组后,需要使用delete运算符释放内存
vector容器

vector是C++中一个强大的容器,它可以保存多个相同类型的对象。与数组不同,vector的大小可以动态调整。以下是一个vector的示例:

#include <iostream>
#include <vector>

int main() {
    std::vector<int> vec;
    int size;
    std::cout << "Enter size of vector: ";
    std::cin >> size;
    for (int i = 0; i < size; i++) {
        int num;
        std::cout << "Enter number: ";
        std::cin >> num;
        vec.push_back(num);
    }
    std::cout << "Vector elements: ";
    for (int i = 0; i < vec.size(); i++) {
        std::cout << vec[i] << " ";
    }
    std::cout << std::endl;
    return 0;
}
总结

通过上述介绍,我们了解了在C++中实现具有可变大小的数组的两种方法:动态内存分配和vector容器。使用这些方法,我们可以在程序运行时根据需要分配或调整数组的大小,提高程序的灵活性和扩展性。