0

我想在 C++ 中乘以 5 个矩阵(所有矩阵的大小都不一样),我能做什么?我必须使用循环 5 次还是有像 matlab 那样的简单方法?矩阵大小为 1st : 1x4 2nd : 4x4 3rd : 4x4 4th : 4x4 5th : 4x1

4

2 回答 2

2

您可以使用boost 线性代数库,它定义了矩阵和向量类型,并与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;
于 2013-11-01T13:03:21.333 回答
1
  1. 编写一个函数,对任意大小的矩阵执行矩阵乘法(带有完整性检查)。
  2. 使用该函数四次,每次乘法一次。

或者,您可以*为自己定义的类型矩阵定义运算符,这样您就可以编写a*b*c*d

于 2013-11-01T13:01:43.703 回答