Shw*_*ine 5 c++ visual-studio-2010
有时,当我编译C ++项目时,通过说“ Build Succeeded”成功进行构建。但是,如果单击错误列表,则可能会显示一些错误,例如“ IntelliSense:不允许使用不完整的类型”。我的问题是什么是“ IntelliSense”错误,我应该对输出可执行文件有疑问吗?
Intellisense错误不一定是真正的编译器错误。请记住,Intellisense是一个单独的部分编译器,旨在提高速度。它会部分编译您的代码以帮助生成IDE补全,并且还被IDE用来强调Visual Studio IDE中可能出现的错误。
从VS2010开始的IntelliSense解析器是另一家公司的产品。EDG,Edison Design Group,在C ++世界中非常有名,因为它是唯一编写100%符合该标准的C ++ 03前端的人。
但是它与MSVC ++编译器不是100%兼容。VS2010是训练轮子,它们一直在解决不兼容问题。一些差异是非常基本的,例如,MSVC ++使用一种不常见的方法在预处理器中执行宏替换。语言标准从未详细说明过这一细节,因此Microsoft会尽早做出与众不同的选择。很难修复,方法太多他们的客户承担了一个依赖关系。
您可以从这个问题的正面看。如果您移植到g ++的clang上,则您的代码是不可靠的,可能会很麻烦。如果您需要帮助以将其撤消,则只需提出一个问题即可。
| 归档时间: |
|
| 查看次数: |
823 次 |
| 最近记录: |