【发布时间】:2016-01-13 12:49:07
【问题描述】:
我的 GUI 中有一个显示图表的小部件。如果我有多个图表,GUI 上的矩形中会显示一个图例。
我有一个QStringlist (legendText),其中包含图例的文本。如果不需要图例,legendText 将为空。如果有图例,legendText 将保留文本。
为了找到图例周围矩形的高度,我想执行以下操作:
int height = 10;
QStringList legendText;
...
height = height * (legendText->size() > 0);
...
将int 与boolean 相乘是一个好主意/好样式吗?我会遇到这样的问题吗?
【问题讨论】:
-
在我看来,这个问题是关于风格和易读性的,而所谓的重复则涉及优化。
-
可以,但牺牲了可读性。我更愿意明确表达我的意图。
-
我不清楚你为什么要首先分配
height,如果你可能正要取消它。这令人困惑,也妨碍了const-正确性。为什么不只是int const height = 10 * (legendText->size() > 0);或int const height = legendText->isEmpty() ? 0 : 10;(或任何其他可能的变体)?