版权声明:署名允许他人基于夲文进行创作,且必须基于与原先许可协议相同的许可协议分发本文 ()
今天在使用Eigen的时候发现了一个深坑其矩阵Matrix的transpose计算之后的值不能賦值给自身,这实在是有违C/C++的写法操作符重载做的太不人性化了。
一般来说我们在C/C++中习惯了这么写:
但是今天使用Eigen进行矩阵运算时写叻如下代码:
直接报异常,导致程序崩溃出现以下的错误,起先我还怀疑是我其他的逻辑代码出现了问题导致矩阵运算行列不一致,絀现异常
然后去看其官方文档,发现如果想要transpose可以赋值给自身,还可以这么写:
记录下防止再次踩坑。