<prompt> Tekeleza darasa la C linaloitwa Matrix ambalo linawakilisha mkusanyiko wa 2D wa nambari kamili. Darasa linapaswa kuwa na mbinu za kujumlisha, kutoa, na kuzidisha matrices, pamoja na njia ya kuchapisha matrix katika umbizo linalosomeka. Hakikisha ushughulikiaji sahihi wa makosa kwa utendakazi wa matriki usioendana.  <response>: cpppamoja na pamoja na darasa la Matrix umma: Matrixint rows, int cols : datarows, std::vectorcols Getters kwa idadi ya safu na safu int getRows const return data.size; int getCols const rejesha data0.size; Fikia vipengele vya matrix int operatorint row, int col rejesha datarowcol; const int operatorint row, int col const rejesha datarowcol; Nyongeza Opereta wa Matrixconst Matrix other const if getRows ! other.getRows getCols ! other.getCols throw std::invalid_argumentMatrices ina vipimo visivyolingana vya kuongezwa.; Matokeo ya MatrixgetRows, getCols; kwa int i 0; i getRows; i kwa int j 0; j getCols; j matokeoi, j hiii, j nyinginei, j; matokeo ya kurudi; Kutoa Opereta wa Matrix-const Matrix other const if getRows ! other.getRows getCols ! other.getCols throw std::invalid_argumentMatrices ina vipimo visivyolingana vya kutoa.; Matokeo ya MatrixgetRows, getCols; kwa int i 0; i getRows; i kwa int j 0; j getCols; j matokeoi, j hiii, j - nyinginei, j; matokeo ya kurudi; Kuzidisha Opereta wa Matrixconst Matrix other const ikiwa getCols ! other.getRows throw std::invalid_argumentMatrices ina vipimo visivyolingana vya kuzidisha.; Matokeo ya MatrixgetRows, other.getCols; kwa int i 0; i getRows; i kwa int j 0; j other.getCols; j jumla ya int 0; kwa int k 0; k getCols; k jumla hiii, k nyinginek, j; matokeoi, j jumla; matokeo ya kurudi; Matrix ya kuchapisha void print const kwa int i 0; i getRows; i kwa int j 0; j getCols; j std::cout hiii, j ; std::cout std::endl; Privat: std::vector data;;int main Matrix A2, 3; Matrix B 3, 2; A0, 0 1; A0, 1 2; A0, 2 3; A1, 0 4; A1, 1 5; A1, 2 6; B0, 0 7; B0, 1 8; B1, 0 9; B1, 1 10; B2, 0 11; B2, 1 12; Matrix C A B; C.print; kurudi 0; 