C++ Eigen库非常见报错。
1.内存问题。
出错文件:C:\ProgramCode\CommonLib\ceres_win10_vs2017_x64\eigen3\include\eigen3\Eigen\src\Core\util\Memory.h
//出错位置。
EIGEN_DEVICE_FUNC
inline void throw_std_bad_alloc()
{
#ifdef EIGEN_EXCEPTIONS
throw std::bad_alloc();
#else
std::size_t huge = static_cast<std::size_t>(-1);
::operator new(huge);
#endif
}
// 原因分析,应该是在进行矩阵运算时,矩阵大小超过了能够计算的最大矩阵。
2.矩阵元素个数
Eigen::MatrixXd p(3,4);
int num=p.size();//num的值为3×4=12