KDevelop在#include <file.h>中的#之后自动插入一个空格

deb*_*ndt 5 c++ kdevelop

我只想通过编写在KDevelop中包含一个C++头文件

#include <file.h>
Run Code Online (Sandbox Code Playgroud)

但是,KDevelop会自动将上述语句更正为

# include <file.h>
Run Code Online (Sandbox Code Playgroud)

我无法弄清楚我可以在哪里改变它.我想要第一个版本,这样我的文件就像我正在处理的项目中的其他文件一样.

该文件的类型设置正确为C++文件.我认为额外空间的原因是KDevelop想要缩进该行,因为它在一个条件内,即一个包含守卫,如下所示:

#ifndef THIS_FILE_H
#define THIS_FILE_H

// THIS_FILE_H
#endif
Run Code Online (Sandbox Code Playgroud)

KDevelop也希望缩进该#define THIS_FILE_H行.

我尝试通过转到" 设置" - >"自定义KDevelop"菜单项,然后单击左侧的" 源格式化"来创建自己的缩进样式.在定义格式化样式时,我已禁用预处理程序指令的缩进,但是,它对包含保护的内部#include#define内部的缩进没有影响.

j4x*_*j4x 1

我知道这已经很老了,但这是我的建议,供将来参考。

Settings -> Configure KDevelop -> Code Formatter

在那里,您将能够看到您希望 KDevelop 格式化的语言(C、C++、C#、Java 等)、格式化程序(“艺术风格”或“自定义脚本格式化程序”)的下拉列表以及可能的预定义列表样式加按钮来定制您自己的。

检查您是否选择了一种合适的预定义,并尝试几种,看看会发生什么。

KDevelop 应该停止在此之后添加额外的空格# include

问题:你们的 KDevelop 是否也在 a 后面添加了一个空格#define