当前位置:  开发笔记 > 编程语言 > 正文

是否有一个自动的源代码格式化程序,很好地包装了C/C++的行?

如何解决《是否有一个自动的源代码格式化程序,很好地包装了C/C++的行?》经验,为你挑选了3个好方法。

我大部分时间都使用astyle来格式化我的代码,我很喜欢它,但有一个烦恼是它无法为最大行长度指定至少一个"提示".如果您有一行代码,例如:

this->mButtonCancel->setLeftClickProc(boost::bind(&FileListDialog::cancelLeftClick, this));

我希望源代码格式化程序能够适度地智能地包装它:

this->mButtonCancel->setLeftClickProc(
  boost::bind(&FileListDialog::cancelLeftClick, this));

...可能是我如何格式化这行代码.对于长参数列表,我可能更喜欢在开括号上对齐,但显然在这种情况下不起作用.无论哪种方式,astyle都不支持使用不包含多个语句的长行执行任何操作.有谁知道一个工具呢?



1> 小智..:

GNU Indent支持打破长线.

http://www.gnu.org/software/indent/manual/indent.html#SEC12



2> piotao..:

我发现uncrustify命令行工具非常实用.它有很多选项,因此有点难,但经过一些练习后,它是非常宝贵的.主页在这里:http: //uncrustify.sourceforge.net/



3> shiva..:

Astyle 2.03现在支持基于最大代码长度的分割线

http://astyle.sourceforge.net/astyle.html#_max-code-length

我已对此进行了测试,并将最大代码长度= 80的行拆分,但基于最小可能的更改.我最大化了一行中的代码量,因此中断并不总是容易阅读(但它打破了它们)

推荐阅读
爱唱歌的郭少文_
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有