C&C++   发布时间:2022-04-03  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了c – 为什么在Emacs中使用CEDET完成代码的速度如此之慢?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我最近尝试了KDevelop.它比语义完全自插入或M-Ret更快(即时)查找符号(变量,函数名,类,结构…).使用M-Ret的速度更快,但它没有像其他IDE那样好的格式,而是像From nil>这样无意义的格式.在emacs中,我必须等待至少~1秒,在许多情况下,等待CEDET查找所有包含的相关源文件,这需要很长时间.

我使用了auto auto clang,但似乎没有速度提升.为什么会这样:(?我喜欢Emacs和所有,并且在我发现KDevelop之前已经将它用于我的C/C++差不多一年了,但是使用Emacs意味着代码完成应该是微不足道的和可选的?

解决方法

这个最简单的答案很可能是KDevelop的DUChain和解析器是用(我推测)C编写的,其中令牌管理类似地构建. CEDET的解析器都在Emacs Lisp中,数据库和查找也在Emacs Lisp中.然在Emacs中对完成引擎的调用之间构建和缓存了一些表,但是在代码更改时(由于键入),它们经常被重建.构建所有表后,CEDET完成引擎可以非常快.

我已经在代码完成上运行了许多配置文件以使事情变得更快,在阅读了一些关于duchain之后,看起来KDevelop有一个用于整个项目的主符号表. CEDET无法执行此操作,因为并非所有文件都在项目中,因此每个文件都需要创建一个临时表.我已经了解了很长一段时间,但从未将CEDET的符号数据库外部化,以便可以在单独的线程(进程)中构建和维护这些表.

大佬总结

以上是大佬教程为你收集整理的c – 为什么在Emacs中使用CEDET完成代码的速度如此之慢?全部内容,希望文章能够帮你解决c – 为什么在Emacs中使用CEDET完成代码的速度如此之慢?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。