如何将std::vector<std::vector<int>> m_Graph;重设成一个4*4元素全为0的矩阵
时间: 2024-10-09 20:05:42 浏览: 39
你可以通过循环来初始化`std::vector<std::vector<int>>` `m_Graph`为一个4x4的全零矩阵。这里是一个简单的示例:
```cpp
#include <vector>
// 初始化函数
void resetToZero(std::vector<std::vector<int>>& m_Graph) {
for (size_t i = 0; i < 4; ++i) {
for (size_t j = 0; j < 4; ++j) {
m_Graph[i][j] = 0;
}
}
}
int main() {
std::vector<std::vector<int>> m_Graph(4, std::vector<int>(4)); // 创建一个4x4的动态向量
resetToZero(m_Graph);
// 现在m_Graph是一个4x4的全零矩阵
for (const auto& row : m_Graph) {
for (int elem : row) {
if (elem != 0) {
std::cout << "Element is not zero!" << std::endl;
break;
}
}
if (elem == 0) {
std::cout << "Row is filled with zeros." << std::endl;
}
}
return 0;
}
```
这个代码首先创建了一个4x4的向量,然后通过`resetToZero`函数将其所有元素设置为0。`main`函数中的循环可以检查是否所有的元素都被成功置零。
阅读全文