5
我想看看您是否可以定位我。在Visual Studio 2010中增强IntelliSense错误
碰巧我编译和为了与Visual Studio 2010中使用它们引用的Boost库在构建我的测试项目中,我得到这两个智能感知错误
1 IntelliSense: #error directive: "Macro BOOST_LIB_NAME not set (internal error)" c:\boost_1_43_0\boost\config\auto_link.hpp
2 IntelliSense: #error directive: "some required macros where not defined (internal logic error)." c:\boost_1_43_0\boost\config\auto_link.hpp
检查auto_link.hpp头文件第一误差是在这条线
#ifndef BOOST_LIB_NAME
# error "Macro BOOST_LIB_NAME not set (internal error)"
#endif
跟踪的BOOST_LIB_NAME
定义,似乎在config.hpp由boost_regex,我包括以下
#if !defined(BOOST_REGEX_NO_LIB) && !defined(BOOST_REGEX_SOURCE) && !defined(BOOST_ALL_NO_LIB) && defined(__cplusplus)
# define BOOST_LIB_NAME boost_regex
# if defined(BOOST_REGEX_DYN_LINK) || defined(BOOST_ALL_DYN_LINK)
# define BOOST_DYN_LINK
... more code
奇怪的是当我指向BOOST_LIB_NAME
它定义了BOOST_LIB_NAME
并且IntelliSense错误消失。
我的程序使用Boost:Regex库进行构建和执行,包含或不包含Intellisense错误;然而,我不明白为什么这些智能感知错误首先出现,第二,为什么将宏指向config.hpp定义为BOOST_LIB_NAME
。
任何指导将不胜感激。
感谢,
海梅