首页  >  文章  >  后端开发  >  C++ 中的数组与向量有什么区别?

C++ 中的数组与向量有什么区别?

WBOY
WBOY原创
2024-06-02 12:25:58251浏览

在 C++ 中,数组是一种固定大小的数据结构,需要在创建时指定大小,而向量是一种动态大小的数据结构,大小可以在运行时更改。数组使用 [] 运算符访问和修改元素,而向量使用 push_back() 方法添加元素和 [] 运算符访问元素。数组需要使用 delete[] 释放内存,而向量使用 erase() 删除元素。

C++ 中的数组与向量有什么区别?

C++ 中的数组与向量:区别与实战

在 C++ 中,数组和向量都是用于存储同类型数据的集合。然而,它们在创建、访问和管理数据方面有一些关键区别。

数组

数组是固定大小的数据结构,其大小在创建时指定。使用 [] 运算符访问和修改数组中的元素。

int myArray[5] = {1, 2, 3, 4, 5};

cout << myArray[2]; // 输出 3
myArray[3] = 10;  // 将元素 4 替换为 10

向量

向量是动态大小的数据结构,其大小可以在运行时更改。使用 push_back() 方法添加元素,使用 [] 运算符访问和修改元素。

vector<int> myVector; // 创建一个空向量

myVector.push_back(1);
myVector.push_back(2);
myVector.push_back(3);

cout << myVector[1]; // 输出 2
myVector[2] = 10;  // 将元素 3 替换为 10

区别

特性 数组 向量
大小 固定 动态
创建 需要指定大小 无需指定大小
添加元素 使用 myArray[index] 使用 myVector.push_back()
删除元素 使用 delete[] myArray; 使用 myVector.erase()

实战案例

使用数组计算平均值

int main() {
    int myArray[5] = {1, 2, 3, 4, 5};

    int sum = 0;
    for (int i = 0; i < 5; i++) {
        sum += myArray[i];
    }

    double average = (double)sum / 5;

    cout << average << endl;

    return 0;
}

使用向量存储学生成绩

int main() {
    vector<int> scores;

    scores.push_back(85);
    scores.push_back(90);
    scores.push_back(95);

    for (vector<int>::iterator it = scores.begin(); it != scores.end(); it++) {
        cout << *it << endl;
    }

    return 0;
}

以上是C++ 中的数组与向量有什么区别?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn