我对 Boost ublas 文档有点困惑。我似乎不清楚稀疏矩阵类和密集矩阵类共享一个共同的父类——我相信这是设计使然。但是,我如何设计一个可以接受稀疏或密集矩阵的 API,假设它只需要使用 operator() 访问器对矩阵的条目进行操作,例如。例如,像这样:
float doMatrixMath(matrix_base<float> m)
{
return m(1,1)+m(2,2);
}
也许我对这个的想法是错误的。任何有关如何考虑 ublas 类的对象建模的指导将不胜感激!