c++使用vector对矩阵的块进行修改
#include <vector>
#include <iostream>
using namespace std;
vector<vector<double>> modify_block(vector<vector<double>>& before, int start_x, int start_y, int block_x, int block_y, vector<vector<double>> md_vector) {
for (int k = 0; k < block_x; k++) {
for (int p = 0; p < block_y; p++) {
before[start_x + k][start_y + p] = md_vector[k][p];
}
}
return before;
}
int main() {
vector<vector<double>> nums1 = {
{1, 2, 3},
{4, 15, 6},
{7, 8, 8}
};
vector<vector<double>> nums2 = {
{1, 2},
{4, 15},
};
vector<vector<double>> w = modify_block( nums1, 1,1,2,2, nums2);
for (int i = 0; i < w.size(); i++)
{
for (int j = 0; j < w[0].size(); j++)
{
cout << w[i][j] << " ";
}
cout << endl;
}
}