在 eigen 文档(总体来说相当不错)中,我看到对 MatrixBase
的 rows()
方法的引用。我目前正在尝试找到一种方法来获取矩阵中的行数,而不知道矩阵的方向(行/列主),因此只需调用 rows()
会非常方便.
但我在任何地方都找不到这个记录。这是什么方法呢?它有什么作用?它是否只返回动态矩阵的 Eigen::Dynamic
,还是知道行数?
查看 the reference page for MatrixBase ,我看到多次提到 MatrixBase::rows()
但没有链接...有什么想法吗?
最佳答案
rows()
方法确实返回行数。它在类EigenBase
中定义,MatrixBase
是该类的子类。其文档位于 http://eigen.tuxfamily.org/dox/structEigen_1_1EigenBase.html#a5552abd83dbd03c85cea6d61fd8875a5 。找到它的一种方法是在 Eigen 文档右上角的搜索字段中输入“rows”,然后在出现的弹出窗口中单击“rows”;打开库中定义的 rows()
方法列表,包括 EigenBase::rows()
。
文档没有明确说明这一点,但 rows()
方法确实返回在运行时确定的实际行数。常量 RowsAtCompileTime
返回动态大小矩阵的 Dynamic
和静态大小矩阵的行数。
文档中提到的 MatrixBase::rows()
是过去的残余,需要消除。感谢您对文档的赞扬,但我们知道它可以改进。
关于c++ - rows() 方法有什么作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24485172/