在c ++中乘以5个不同大小的矩阵

时间:2013-11-01 12:58:14

标签: c++ matrix

我想在c ++中乘以5矩阵(所有都不是相同的大小),那么我能做什么? 我将不得不使用循环5次或有任何简单的方法,如在matlab中? 矩阵的大小是 第1名:1x4 第二名:4x4 第3名:4x4 第4名:4x4 5:4x1

2 个答案:

答案 0 :(得分:2)

您可以使用boost linear algebra库来定义矩阵和矢量类型,并与operator *相乘。

matrix<int>  m1(1,4);
matrix<int>  m2(4,4);
matrix<int>  m3(4,4);
matrix<int>  m4(4,1);

//... initialize your matrices here

matrix<int> result = m1*m2*m3*m4;

答案 1 :(得分:1)

  1. 编写一个函数,对任意大小的矩阵执行矩阵乘法(通过健全性检查)。
  2. 使用此功能四次,每次乘法一次。
  3. 或者,您可以为自己定义的类型矩阵定义*运算符,这样就可以编写a*b*c*d