繁体   English   中英

MySQL Connector和VC2010标头冲突

[英]MySQL Connector and VC2010 header collision

我的应用程序使用MySQL / C ++ Connector,其中包括config.h,如下所示。

// ...
#if !defined(HAVE_INT8_T) && defined(HAVE_MS_INT8)
typedef __int8          int8_t;
#endif
// ...

由于我将VC ++ 2010与MSVCR100一起使用,因此我的应用程序还包含stdint.h。

/* TYPE DEFINITIONS */
typedef signed char int8_t;
typedef short int16_t;
typedef int int32_t;
// ...

这两个int8_t导致此冲突编译错误。

我做了一些谷歌研究,但似乎没有人知道完美的解决方案。

任何帮助将不胜感激。

非常感谢。

在包含MySQL标头之前,您是否尝试过#define HAVE_INT8_T(和类似的,我想其他类型也会发生这种情况)?

即像

...
#define HAVE_INT8_T
#include "MySQL.h"
...

编辑:如果MySQL.h包含类似“ config.h”的内容,这又使事情变糟,则可以尝试直接包含该config.h,然后调整错误的定义,然后包含MySQL.h。 config.h周围可能会有一个include保护,以防止再次包含它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM