Nic*_*ick 5 c++ matrix any eigen
我有一个Eigen::Matrix<double, Dynamic, Dynamic>,我需要检查它的任何元素是否与0不同.
我尝试了以下代码:
Matrix<double, Dynamic, Dynamic> m;
bool f = (m != 0.0).any();
Run Code Online (Sandbox Code Playgroud)
但是我遇到了编译器错误.
二进制表达式的操作数无效('const Eigen :: Matrix'和'double')
在Eigen中,大多数元素操作由Array类处理.幸运的是,有一种简单的方法可以在Matrix对象上使用它们.尝试
bool f = (m.array() != 0.0).any();
Run Code Online (Sandbox Code Playgroud)