当我对不同大小的动态矩阵使用operator + =时,没有出现运行时错误。
分别使用运算符=和运算符+确实会产生错误(如预期)。
我正在使用Eigen 3.3.1b。
int n = 5;
Eigen::MatrixXcd mat1 = Eigen::MatrixXd::Identity(n, n);
int m = 6;
Eigen::MatrixXcd mat2 = Eigen::MatrixXd::Identity(m, m);
mat1 += mat2; // should not work but no runtime error
//mat1 = mat1 + mat2; // ok : error