【Bug/Cplex】不明原因报错集合

来源:互联网 发布:java web编程实战宝典 编辑:程序博客网 时间:2024/04/30 19:54

vs c++工程添加cplex库后,编译出现很多错误的时候,不一定是代码有问题,可能是:

【宏定义冲突】

EXAMPLE_1 往项目中添加#include<ilcplex/ilocplex.h>直接报如下错

1>C:\Program Files\IBM\ILOG\CPLEX_Studio127\concert\include\ilconcert/iloiterator.h(41): error C2332: “class”: 缺少标记名
1>C:\Program Files\IBM\ILOG\CPLEX_Studio127\concert\include\ilconcert/iloiterator.h(41): error C2993: “”: 非类型模板参数“<unnamed-tag>”的类型非法
1>C:\Program Files\IBM\ILOG\CPLEX_Studio127\concert\include\ilconcert/iloiterator.h(41): error C2059: 语法错误:“常量”
1>C:\Program Files\IBM\ILOG\CPLEX_Studio127\concert\include\ilconcert/iloiterator.h(43): error C2059: 语法错误:“public”
1>C:\Program Files\IBM\ILOG\CPLEX_Studio127\concert\include\ilconcert/iloiterator.h(43): error C2143: 语法错误: 缺少“;”(在“{”的前面)
1>C:\Program Files\IBM\ILOG\CPLEX_Studio127\concert\include\ilconcert/iloiterator.h(43): error C2447: “{”: 缺少函数标题(是否是老式的形式表?)
1>C:\Program Files\IBM\ILOG\CPLEX_Studio127\concert\include\ilconcert/iloexpression.h(72): error C2246: “IloNumExprI::_rttiIndex”: 本地定义的类中的非法静态数据成员
1>C:\Program Files\IBM\ILOG\CPLEX_Studio127\concert\include\ilconcert/iloexpression.h(72): error C2270: “getTypeInfo”: 非成员函数上不允许修饰符
1>C:\Program Files\IBM\ILOG\CPLEX_Studio127\concert\include\ilconcert/iloexpression.h(72): error C2270: “getBaseTypeInfo”: 非成员函数上不允许修饰符
1>C:\Program Files\IBM\ILOG\CPLEX_Studio127\concert\include\ilconcert/iloexpression.h(72): error C2270: “isType”: 非成员函数上不允许修饰符
1>C:\Program Files\IBM\ILOG\CPLEX_Studio127\concert\include\ilconcert/iloexpression.h(72): error C2270: “getTypeIndex”: 非成员函数上不允许修饰符
1>C:\Program Files\IBM\ILOG\CPLEX_Studio127\concert\include\ilconcert/iloexpression.h(72): error C2270: “getBaseTypeIndex”: 非成员函数上不允许修饰符
1>C:\Program Files\IBM\ILOG\CPLEX_Studio127\concert\include\ilconcert/iloexpression.h(72): error C2270: “getRttiTypeName”: 非成员函数上不允许修饰符
1>C:\Program Files\IBM\ILOG\CPLEX_Studio127\concert\include\ilconcert/iloexpression.h(72): error C2270: “extractToCP”: 非成员函数上不允许修饰符
1>C:\Program Files\IBM\ILOG\CPLEX_Studio127\concert\include\ilconcert/iloexpression.h(72): error C2270: “unextractFromCP”: 非成员函数上不允许修饰符
1>C:\Program Files\IBM\ILOG\CPLEX_Studio127\concert\include\ilconcert/iloexpression.h(72): error C2270: “modifyCP”: 非成员函数上不允许修饰符
1>C:\Program Files\IBM\ILOG\CPLEX_Studio127\concert\include\ilconcert/iloexpression.h(72): error C2246: “IloNumExprI::_extractCP”: 本地定义的类中的非法静态数据成员
1>C:\Program Files\IBM\ILOG\CPLEX_Studio127\concert\include\ilconcert/iloexpression.h(72): error C2246: “IloNumExprI::_unextractCP”: 本地定义的类中的非法静态数据成员
1>C:\Program Files\IBM\ILOG\CPLEX_Studio127\concert\include\ilconcert/iloexpression.h(72): error C2246: “IloNumExprI::_modifyCP”: 本地定义的类中的非法静态数据成员
1>C:\Program Files\IBM\ILOG\CPLEX_Studio127\concert\include\ilconcert/iloexpression.h(91): error C2270: “getExprUsed”: 非成员函数上不允许修饰符
1>C:\Program Files\IBM\ILOG\CPLEX_Studio127\concert\include\ilconcert/iloexpression.h(101): error C2270: “isInteger”: 非成员函数上不允许修饰符
1>C:\Program Files\IBM\ILOG\CPLEX_Studio127\concert\include\ilconcert/iloexpression.h(103): error C2270: “eval”: 非成员函数上不允许修饰符
1>C:\Program Files\IBM\ILOG\CPLEX_Studio127\concert\include\ilconcert/iloexpression.h(105): error C2270: “getNumConstant”: 非成员函数上不允许修饰符
1>C:\Program Files\IBM\ILOG\CPLEX_Studio127\concert\include\ilconcert/iloexpression.h(107): error C2270: “isRefCountedExpr”: 非成员函数上不允许修饰符
一个个文件检查后发现是一个宏定义导致的:#define E 0.01

应该是iloexpression.h中涉及了E

0 0
原创粉丝点击