C++ vector用别人的size初始化
时间: 2025-01-16 21:08:01 浏览: 11
使用另一个Vector的Size初始化C++ Vector
当希望基于另一个vector
的大小来初始化一个新的vector
时,可以直接利用已存在的vector
对象调用其成员函数size()
获取元素数量,并以此作为新vector
构造参数的一部分。下面展示了一种实现方式:
#include <iostream>
#include <vector>
int main() {
std::vector<int> originalVec = {1, 2, 3, 4}; // 原始向量
// 创建一个具有相同大小的新向量,默认填充为0
std::vector<int> newVec(originalVec.size(), 0);
// 输出新的向量及其大小验证初始化成功
std::cout << "New vector size: " << newVec.size() << "\n";
return 0;
}
上述代码片段展示了如何通过指定原始vector
的尺寸并设置初始值(这里是0),从而完成新vector
的创建[^1]。
对于那些不希望立即赋初值的情况,则可以省略第二个参数,这将导致所有元素被默认初始化为其类型的零值表示形式(比如整数类型会被设为0)。此外,在某些场景下可能需要延迟初始化操作;此时可以在定义之后单独执行初始化语句[^2]。
相关问题
c++vector二维数组初始化
你可以使用嵌套的 vector
进行二维数组的初始化。以下是一个示例代码:
#include <vector>
int main() {
// 定义一个二维 vector,并初始化为 3 行 4 列的二维数组
std::vector<std::vector<int>> matrix = {
{1, 2, 3, 4},
{5, 6, 7, 8},
{9, 10, 11, 12}
};
// 输出二维数组的元素
for (int i = 0; i < matrix.size(); ++i) {
for (int j = 0; j < matrix[i].size(); ++j) {
std::cout << matrix[i][j] << " ";
}
std::cout << std::endl;
}
return 0;
}
在上面的代码中,我们首先定义了一个 std::vector<std::vector<int>>
类型的二维向量 matrix
,然后使用花括号 {}
初始化其中的元素。每个内部的一维向量表示一行,整个 matrix
向量表示一个三行四列的二维数组。你可以按照自己的需求修改元素的值和数组的大小。
c++ vector<vector> p 初始化
在C++中,可以使用以下方法初始化二维容器vector<vector
int size1 = 3; // 第一维大小
int size2 = 4; // 第二维大小
// 方法一:使用resize()函数
vector<vector<int>> p;
p.resize(size1, vector<int>(size2, 0));
// 方法二:使用循环初始化
vector<vector<int>> p(size1, vector<int>(size2, 0));
// 方法三:使用初始化列表
vector<vector<int>> p = {{0, 0, 0, 0},
{0, 0, 0, 0},
{0, 0, 0, 0}};
以上是三种常用的初始化二维容器vector<vector
相关推荐
















