VS2015 用 openmesh read_mesh 读取网格时,这样一段代码
void CPathFace::test2()
{string file = ".\\data\\face\\face_forehead.obj";MyMesh mesh;if (!OpenMesh::IO::read_mesh(mesh, file)){std::cerr << "Cannot open mesh to file" << std::endl;exit(1);}
}
release模式下没问题。
debug 模式下,报 Debug Assertion Failed! Expression: is_block_type_valid(header->block_use)
具体如下错误:
但如果将mesh定义为MyMesh指针类型,即
void CPathFace::test2()
{string file = ".\\data\\face\\face_forehead.obj";MyMesh *mesh = new MyMesh;if (!OpenMesh::IO::read_mesh(*mesh, file)){std::cerr << "Cannot open mesh to file" << std::endl;exit(1);}
}
则debug和release模式下都没问题。
bug算是解决了,但具体原因还是没搞清。