eclipse - 如何在eclipse中正确格式化布尔表达式
问题描述
我几乎像我想要的那样在 eclipse-cdt 中拥有代码格式化程序,但是我遇到了布尔表达式的问题。
这是代码格式化程序的输出:
if (ACM_SlewRight)
mStopWallSlewRight = (leftSide && absAngleCur > 900) || (rightSide && absAngleCur < 900);
}
return mStopWallSlewLeft||
mStopWallSlewRight ||
mStopWallBoom1_Up ||
mStopWallBoom1_Down ||
mStopWallBoom2_Up ||
mStopWallBoom2_Down ||
mStopWallTeleOut;
我想让它看起来像这样:
if (ACM_SlewRight)
{
mStopWallSlewRight = (leftSide && absAngleCur > 900) ||
(rightSide && absAngleCur < 900);
}
return mStopWallSlewLeft||
mStopWallSlewRight ||
mStopWallBoom1_Up ||
mStopWallBoom1_Down ||
mStopWallBoom2_Up ||
mStopWallBoom2_Down ||
mStopWallTeleOut;
我不明白为什么第一部分没有包装,因为我将最大线宽配置为 80,这是 98。返回由我自己包装,因为包装器在这里也不会做任何事情。
我还尝试了我能找到的所有选项(尤其是在换行 -> 表达式中)。但是我找不到解决方案,不支持布尔表达式吗?
解决方案
您的问题的直接答案是您可能在 CDT 的内置格式化程序中发现了一个错误。你可以在这里归档。
更具前瞻性的答案是 CDT 的内置格式化程序在过去几年中几乎没有进行过任何维护,因此任何此类错误都不太可能被修复(除非您自己贡献修复)。另一方面,有很多维护得更好的 C++ 源代码格式化程序(如clang-format)和将它们集成到 Eclipse 中的插件(如CppStyle),您可能会获得更好的体验。
推荐阅读
- python - 如何在 python 中打印 100 个随机数的“set”并将它们添加到空 set()
- android - 未在不同活动中检索到 SharedPreference 值
- swift - 如何从 FireStore 查询数据?
- amazon-web-services - AWS API Gateway 中的动态阶段变量
- xamarin - 是否可以使用 Xamarin 创建原生 Android 和 iOS 库?
- postgresql - 在 Postgres 中过滤 int 列的最佳方法
- ionic3 - Ionic3 staticInjectorError
- javascript - 从服务器端调用javascript函数?
- laravel - 未从 Laravel HTML Mailable 接收到 $message 变量(非降价)
- java - 数据没有从 firebase 传到我的应用程序