c++三元组的矩阵加法
时间: 2024-07-15 11:00:40 浏览: 74
在C++中,三元组(std::tuple)主要用于表示有序的不可变数据集合,但它们本身并不直接支持矩阵的运算。矩阵加法通常是用二维数组(std::vector<std::vector<T>> 或 std::array<std::array<T, N>, M>>)来实现的。为了演示矩阵加法,你可以创建两个同样大小的二维数组(代表矩阵),然后遍历每个元素,对对应的元素执行加法操作。
以下是一个简单的例子:
```cpp
#include <iostream>
#include <vector>
template <typename T>
std::vector<std::vector<T>> matrix_addition(const std::vector<std::vector<T>>& mat1, const std::vector<std::vector<T>>& mat2) {
std::vector<std::vector<T>> result(mat1.size(), std::vector<T>(mat1.size()));
for (size_t i = 0; i < mat1.size(); ++i) {
for (size_t j = 0; j < mat1.size(); ++j) {
result[i][j] = mat1[i][j] + mat2[i][j];
}
}
return result;
}
int main() {
// 示例矩阵
std::vector<std::vector<int>> matrix1 = {{1, 2}, {3, 4}};
std::vector<std::vector<int>> matrix2 = {{5, 6}, {7, 8}};
std::vector<std::vector<int>> sum_matrix = matrix_addition(matrix1, matrix2);
// 打印结果
for (const auto& row : sum_matrix) {
for (const auto& elem : row) {
std::cout << elem << " ";
}
std::cout << "\n";
}
return 0;
}
```
阅读全文