[英]Eclipse how can I indent C++ preprocessor macros
我在eclipse中找不到设置,因此可以像缩进代码一样使它自动缩进预处理程序宏。 例如,eclipse尝试格式化这样的代码。
int main()
{
#ifdef SOMETHING
cout << "Something Defined" << endl;
#endif
return 0;
}
而我希望它看起来像...
int main()
{
#ifdef SOMETHING
cout << "Something Defined" << endl;
#endif
return 0;
}
有什么想法可以让日食做到我想要的吗?
我认为宏缩进是没有选择的。 但我看到clangformat似乎可以使用宏缩进,因此您可以自定义自己的clang格式( http://clang.llvm.org/docs/ClangFormatStyleOptions.html )并将eclipse配置为使用clangformat而不是默认格式。
要缩进预处理程序,您可能需要使用Neatbens 。 它的格式化程序无视preANSIc。
Eclipse缩进是正确的。 无论周围代码的缩进形式如何,预处理器指令都应位于最左侧的列中。
像其他已经指出的那样,编译器指令#
必须从第一列开始才能符合标准。 但是,允许在它们后面放置空间。 因此,我的首选解决方案如下所示,因此它不再是日食问题。
int main()
{
# ifdef SOMETHING
cout << "Something Defined" << endl;
# endif
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.