vector<vector<int>>Map(Stationnum, vector<int>(Stationnum))是什么意思
时间: 2025-07-06 09:57:03 浏览: 13
### C++ 中嵌套向量初始化
在 C++ 中,`std::vector` 是一种动态数组容器,支持多维向量的创建和操作。当涉及到 `StationNum` 维度且类型为整数 (`int`) 的嵌套向量初始化时,可以按照如下方式进行:
#### 单维度向量初始化
单维度向量可以通过指定大小并赋初值来实现:
```cpp
#include <iostream>
#include <vector>
using namespace std;
int main() {
size_t StationNum = 3;
vector<int> singleDimVec(StationNum, 0);
for (size_t i = 0; i < StationNum; ++i) {
cout << "singleDimVec[" << i << "] = " << singleDimVec[i] << endl;
}
}
```
#### 多维度向量初始化
对于二维或多维的情况,则需构建嵌套结构。这里展示如何创建一个具有特定尺寸的两层嵌套向量(即矩阵),其中每一行都含有固定数量的元素。
```cpp
#include <iostream>
#include <vector>
using namespace std;
int main() {
size_t rowSize = 4; // 行的数量
size_t colSize = 5; // 列的数量
// 创建一个包含 'rowSize' 个子向量的对象,
// 每个子向量都有 'colSize' 长度,并全部填充零。
vector<vector<int>> multiDimVec(rowSize, vector<int>(colSize, 0));
// 输出验证
for (size_t r = 0; r < rowSize; ++r){
for (size_t c = 0; c < colSize; ++c){
cout << "multiDimVec[" << r << "][" << c << "] = " << multiDimVec[r][c];
if(c != colSize - 1) cout << ", ";
}
cout << endl;
}
return 0;
}
```
上述代码展示了如何通过传递两个参数给构造函数来设置每行列数以及默认值的方式完成初始化[^1]。此外,在实际应用中还可以利用更复杂的表达式作为初始值来进行更加灵活的数据填充。
阅读全文
相关推荐












