c++ - 键入时检查代码 C++

标签 c++ linux visual-studio ide

<分区>

Visual Studio 能够“在您在错误 ListView 中键入时”报告错误和警告;

是否有任何适用于 Linux 的 C++ IDE 能够像 Visual Studio 那样运行(具有相同级别的速度/准确性)?

这大大提高了开发速度。

最佳答案

如果您了解 C# IDE 中的 IntelliSense,那么您离实现此功能的 C++ IDE 就不远了,Visual C++ IDE 也能做到这一点。将此功能建模为 JIT 编译器不是很准确,它只是 C++ 编译器的前端。减去后端代码生成器,直到您实际构建项目后才会发生。

听起来很简单,但要做好却并非易事。主要的实现问题是在程序员打字的同时在后台足够快地完成它。并且处理由于程序员忙于编辑而几乎总是处于不可编译状态的代码。常规 C++ 编译器中的常见前端通常不适合该工作。它们的速度不够快,并且不能很好地处理不可编译的代码,通常会产生一连串额外的无趣错误,而这些错误是由一个错误引起的。

Microsoft 曾经使用他们自己的解析器来执行此操作,但后来放弃了。 Edison Design Group 是此类工具的专家,以唯一创建完全实现 C++03 语言规范的 C++ 编译器而闻名。 EDG只卖前端,他们把后端留给实现者。 VS2010 是第一个开始使用 EDG 的 VS 版本。顺便说一句,并非完全没有问题,在一些极端情况下,EDG 解析器与 Visual C++ 编译器不一致。

此功能在其他方面并未广泛使用。它非常昂贵且难以维护,尤其是最近 C++ 的快速变化。我最近听说(有一段时间),EDG 甚至在他们开始与您交谈之前就要求您支付 50,000 美元,这可能还涉及版税支付。这肯定会让微软付出更多的代价,他们还需要支持 C++/CLI 和 C++/CX 语言扩展。嗯,这就是您要支付的费用。

关于c++ - 键入时检查代码 C++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26562734/

相关文章:

c# - 使 .net 4 应用程序在 .net 3.5 上兼容

c++ - 标准库对自 move 分配有什么保证?

c++ - memcpy 导致程序因初始化目标而崩溃

c++ - 为什么偏爱数据结构对齐?

python - 使用 DseAuthenticator 和 DseAuthorizer 从 Windows 将 python 连接到 cassandra 集群

python - 使用 Visual Studio 2017 命令行痛饮和构建项目

c++ - Kill -9时堆内存会被释放吗?

linux - 未找到清除命令 - Yocto 核心图像库

c - "hello world"c cgi 脚本在服务器上崩溃”

python - pip安装tornado在VS2017中失败