c++ - 特征,不能比较相同类型的矩阵
问题描述
我收到以下编译器错误:
../Src/Engine/MasterEngine/Geometry/MatrixMesh.hpp:153:31: error: no match for ‘operator==’ (operand types are ‘SBM’ {aka ‘Eigen::SparseVector<bool, 0, int>’} and ‘SBM’ {aka ‘Eigen::SparseVector<bool, 0, int>’})
153 | SBM(closure_vertices) == vertices &&
对于此代码:
bool IsComplex(
const Eigen::SparseMatrix<bool>& edge_matrix,
const Eigen::SparseMatrix<bool>& face_matrix,
const std::array<Eigen::SparseVector<bool>, 3>& simplices)
{
SBM& vertices = simplices[0];
SBM& edges = simplices[1];
SBM& faces = simplices[2];
const auto[closure_vertices, closure_edges, closure_faces] =
Closure(edge_matrix, face_matrix, {vertices, edges, faces});
return
SBM(closure_vertices) == vertices &&
SBM(closure_edges) == edges &&
SBM(closure_faces) == faces;
}
没看懂,类型是一样的
解决方案
推荐阅读
- javascript - 如何添加在 Vue.JS 模板中循环时每 2 个元素?
- autodesk-forge - 使用 AR/VR Toolkit 获取模型的缩略图?
- matlab - Matlab将符号变量转换为数组
- c++ - 在 C++ 中查找内存中某个类的对象布局的算法
- dc.js - 行未按预期归零
- python - 如何在一个脚本中处理多个图像?
- arduino - ESP8266 上显示旧 WiFi SSID
- node.js - 如何在节点 Js 中使用相同的表单代码进行添加和更新?
- c# - 确定模型中哪个嵌套属性为空?
- javascript - 无法读取未定义的属性“类型”提交表单后出现此错误