利用eigen库简单实现矩阵功能
eigen是目前运行速度较快的C++矩阵运算库,而且其轻便小巧安装方便的特点简直是吸引人啊!特做此笔记,记录一下这个安装简单、体积轻巧、功能强大的C++库。
1. Download and Install
Download
Eigen官网下载Eigen压缩包,大约10M以内。(3.3.4版本的大小为2.91M)
Install
Eigen的另一大优势在于其方便的安装,完全不需要任何安装程序,解压压缩包就可以直接使用。
- 可以放在系统盘上,通过环境变量调用。
- 也可以直接丢到C++工程里,通过相对路径调用
需要注意的是,调用的时候,只需要把解压缩后的文件夹作为VC++附加包含目录(项目属性-C/C++-附加包含目录)添加即可。
2. First Program
只需要在include中包含<Eigen/Dense>
,就可以调用Eigen的所有功能。
例程如下:
#include <iostream>
#include <Eigen/Dense>
using namespace std;
using namespace Eigen;
int main(int argc, char *argv[])
{
MatrixXd m(2, 2);
m(0, 0) = 3;
m(1, 0) = 2.5;
m(0, 1) = -1;
m(1, 1) = m(1, 0) + m(0, 1);
cout << m << endl;
return 0;
}
输出结果: