📜  将向量的所有元素初始化为 0 c++ - TypeScript (1)

📅  最后修改于: 2023-12-03 14:53:48.581000             🧑  作者: Mango

将向量的所有元素初始化为 0(C++ - TypeScript)

在C++和TypeScript中,可以使用vector类表示动态数组。要将向量的所有元素初始化为0,可以使用以下两种方法:

方法1:使用fill()

fill()函数可以用指定的值填充指定范围的元素。我们可以使用vector类的begin()end()方法获取指向向量的开头和结尾的迭代器,并使用fill()函数将所有元素初始化为0。

以下是使用fill()函数初始化向量的示例代码:

#include <iostream>
#include <vector>
#include <algorithm>

using namespace std;

int main() {
    vector<int> vec(10); // 声明一个有10个元素的vector
    fill(vec.begin(), vec.end(), 0); // 将所有元素初始化为0
    for (int i = 0; i < vec.size(); i++) {
        cout << vec[i] << " "; // 输出全部为0的向量元素
    }
    return 0;
}

输出结果为:

0 0 0 0 0 0 0 0 0 0 
方法2:使用resize()和assign()

resize()方法可以更改向量的大小,即向量中元素的数量。assign()方法可以将一个值分配给多个元素。我们可以通过使用resize()方法更改向量的大小,并使用assign()方法将0分配给所有元素来初始化所有元素为0。

以下是使用resize()assign()方法初始化向量的示例代码:

#include <iostream>
#include <vector>

using namespace std;

int main() {
    vector<int> vec;
    vec.resize(10); // 更改向量的大小为10,将所有元素初始化为0
    vec.assign(10, 0); // 将0分配给所有元素
    for (int i = 0; i < vec.size(); i++) {
        cout << vec[i] << " "; // 输出全部为0的向量元素
    }
    return 0;
}

输出结果为:

0 0 0 0 0 0 0 0 0 0 

这两种方法都可以用来将向量的所有元素初始化为0,具体使用哪种方法取决于个人偏好。