多个库或地方 typedef/define 重定义时可以如下解决
#define WORD WORD_U2
#include "u2.h"
/* 'u2.h' example
typedef unsigned short WORD;
WORD u2fun(){
WORD i = 2;
return i;
}
*/
#undef WORD
#define WORD WORD_U1
#include "u1.h"
/* 'u1.h' example
//#define WORD double
typedef double WORD;
WORD fun(WORD &dou) {
WORD tmp = 1.0;
return dou + tmp;
}
*/
#undef WORD
#include <iostream>
int main(){
double s= 0.999;
std::cout << fun(s) << std::endl;
std::cout << u2fun() << std::endl;
}