Eigen2使用注意事项
来源:互联网 发布:centos 拼音输入法rpm 编辑:程序博客网 时间:2024/05/20 11:28
Eigen提供了向量和矩阵运算的一套功能,提供开源源码,无需编译,其实现文件是.hxx和.cxx,以及一些.h文件。可以通过简单的控制台程序使用它,没有任何问题。但是将其集成到MFC中时,遇到了一个大问题:
我使用的是Eigen2,被一个机器人运动学算法库orocos-kdl调用,编译时报错:max和min函数发生冲突。
定位到Eigen\Core的第300多行:大意是如果已经定义了windows中的max()和min()函数
#error ... 请使用预编译#define NOMAXMIN来取消max()min()宏
解决方法:
1. VS工程属性——C/C++——预编译头,添加NOMAXMIN;
2. 在使用到Eigen2的文件中添加:
#ifndef NOMAXMIN
#define NOMAXMIN
#endif
另外,KDL中使用的命名空间的某些函数,如KDL::cos(), KDL::sin(), 和std::cos(), std::sin(),使用时要区分;在同一个cpp文件中,最好不要同时使用
using namespace std;
using namespace KDL;
而应当写成:
#include <cmath>
std::cos(para) z或者KDL::cos(para)
即在使用的时候注明命名空间,避免命名空间的混用
0 0
- Eigen2使用注意事项
- Masonry使用注意事项,原生约束使用注意事项
- String 使用注意事项
- 笔记本使用前注意事项
- HashMap使用的注意事项
- Hibnerate Annotation使用注意事项
- JChatbox使用注意事项
- Gridview+sqldatasource使用注意事项
- SVN使用注意事项之一
- javabean使用注意事项
- UltraWebGrid使用,注意事项集合
- MagicAjax使用及注意事项
- MagicAjax使用及注意事项
- MagicAjax使用及注意事项
- TAO使用注意事项
- PHP Header使用注意事项
- vss2005使用的注意事项
- LCD使用注意事项
- <Nov 4, 2014 4:33:41 PM CST> <Warning> <HTTP> <BEA-101162> <User defined listener org.springframewor
- UVAlive 4100 - Sharif Super Computer (2SAT)
- JAVA 异常类
- 调用weblogic发布的webservice报如下错误:
- 【流媒體】live555—VS2010 /VS2013 下live555编译、使用及测试
- Eigen2使用注意事项
- 寻找缺失的数
- Google MapReduce:超大机群上的简单数据处理(转载)
- POJ1844 Sum
- start_kernel
- 解决android.view.WindowManager$BadTokenException: Unable to add windo
- 特惠价人推荐人天津是东风微风
- Linux下安装VMware Workstation
- HDU—— 2045 不容易系列之(3)—— LELE的RPG难题