寻求能自动解析编译条件的c/c++编辑器
本帖最后由 tianheiGE 于 2014-5-3 12:45 编辑RT,有个比较大的项目代码里面用了很多条件编译,阅读的时候碰到了编译条件的时候不知道这段有没有编译,每次都要去查看编译条件的宏,感觉很不方便,不知道有没那个好用的编辑器能自动解析这些编译条件,不编译的段灰色显示,谢谢!
试过了几个多是要#if 0 #endif的才会灰色,带宏的多没解析
编辑:
发现VS是有这个功能的,而且VS还有个好用的编辑插件Visual Assist X,决定试试VS,坛友说Eclipse也可以,但是感觉它用起来好像有点复杂,但是比VS应该轻巧很多 eclipse可以 编译条件是编译器给出的啊,编写代码的过程中编译器根本就在一边晾着,没有对代码做出任何操作,编辑器怎么可能获得这些宏参数呢?
真想实现这样的功能,建议显式的把编译条件宏自己写出来. Eclipse可以,它似乎是自己实现了一套准编译器。
CodeBlocks不是太复杂的可以解析,复杂的不行。
基于Clang的自动完成系统多数都能搞定,但是配置起来比较麻烦。这个VIM,SubLimeText,EMacs有用到的。 error_dan 发表于 2014-5-3 11:49
编译条件是编译器给出的啊,编写代码的过程中编译器根本就在一边晾着,没有对代码做出任何操作,编辑器怎么可 ...
可以的,这个是现代编辑器的一个趋势了;本来好的自动完成就是要“编译”代码的。
要么自己实现,要么用CLang的接口。
GCC/VC好像还没提供类似的功能。 dr2001 发表于 2014-5-3 11:53
可以的,这个是现代编辑器的一个趋势了;本来好的自动完成就是要“编译”代码的。
要么自己实现,要么用C ...
持续集成神马的吗?咱嵌入式领域在工具上还是落后了啊~
所以这个功能需要完整的工具链来提供,而不是寻找一个NB的纯编辑器...(我刚才真去翻了我的NP++,木有这样的插件...,SubLimeText2装了以后就用来撸高级语言了,还真没想到... kelp 发表于 2014-5-3 11:25
eclipse可以
恩,装了,感觉有点复杂我好好看看怎么用,谢谢! error_dan 发表于 2014-5-3 11:49
编译条件是编译器给出的啊,编写代码的过程中编译器根本就在一边晾着,没有对代码做出任何操作,编辑器怎么可 ...
这个我觉的可以实现吧,编译过程是先预处理,再编译。编辑器要能进行预处理就知道哪些不会被编译的代码了,不是这样吗? dr2001 发表于 2014-5-3 11:51
Eclipse可以,它似乎是自己实现了一套准编译器。
CodeBlocks不是太复杂的可以解析,复杂的不行。
恩,谢谢,我试试 tianheiGE 发表于 2014-5-3 12:28
这个我觉的可以实现吧,编译过程是先预处理,再编译。编辑器要能进行预处理就知道哪些不会被编译的代码了 ...
对,就是这个意思,表面上它是个编辑器,其实后台跑着一个编译器前端,不断的对你的代码进行parse和analysis,这里不仅仅局限于预编译,还有其他编译器前端应该干的事情,都是一边编辑 一边就做了.
博大精深啊~ error_dan 发表于 2014-5-3 12:35
对,就是这个意思,表面上它是个编辑器,其实后台跑着一个编译器前端,不断的对你的代码进行parse和analysis, ...
恩,我刚发现VS也有这个功能,它应该用起来比Eclipse简单吧,决定用下VS error_dan 发表于 2014-5-3 12:06
持续集成神马的吗?咱嵌入式领域在工具上还是落后了啊~
所以这个功能需要完整的工具链来提供,而不是寻找 ...
要想很好的支持自动完成,对于C/C++来说,就是需要一个编译器前端。
大家面临的不是是否需要的问题,而是自己实现vs用现成产品的问题。
对Eclipse和VS等等老一些的全功能IDE,基本上是依靠自己的“编译器”了;对扩展性强,优质的编辑器系统,多数会采用Clang提供的接口。只不过Clang对Win32的支持略差。 同意三楼, 很多项目一套代码能出十来个平台的产品. 所有的宏控制都在不同的makefile里面, 编辑的时候还没法知道这个宏是否开启了. 用惯IDE了,好像没有这样的烦恼……一套代码出来20多种风格差异较大的产品
页:
[1]