前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >好与坏的布尔变量

好与坏的布尔变量

作者头像
Qt君
发布2020-07-02 14:57:36
4260
发布2020-07-02 14:57:36
举报
文章被收录于专栏:跟Qt君学编程跟Qt君学编程

我们都知道布尔类型所表达的关系是"真"和"假"的关系。似乎大部分人对于布尔变量命名并不重视,弄出了很多奇怪的变量。今天我们就讨论下怎么命名好的布尔变量。

  要想定义一件事物,你必须要明白和理解该事物才能做出定义。那么我们评判该定义是否恰当甚至是好坏,我们可以用该定义是否恰当表达出该事物。

  变量命名也是一样,我们需要准确知道该变量表达的是什么。如果变量的命名和其表达出来的东西不一致,那么就是一个糟糕的命名。

以布尔命名为例,Qt君列出一些好的命名和不好的命名,供大家比较:

不好的命名

statusflagtargetab。  

这些命名不能准备表达出事物的真假状态。statusflag相信很多人会用,它们应该是一种状态或标记状态。状态有很多种,固体状态,液体状态,气体状态,还是表示某个状态是true就表明该状态OK,又或者该状态时false就表明该状态没有任何错误,对于statusflag用于布尔变量命名根本表达不出真假关系。

好的命名

doneerrorsuccessokfoundenableavailablevisible

  • done用来表明事情是否已经完成。
  • error用来表明有无错误发生。
  • successok用来表明某些操作是否成功。
  • found用来表明某个值是否找到。

一些不恰当的命名

  • targetAvailable: target名词过于含糊,应该准确命名比如:fileAvailable
  • is开头修饰的布尔变量,如:isError,本身error变量就能表达出有无错误发生的状态,降低了可读性。
if (isError) {
 ...
}
if (error) { // 直接表达即可
 ...
}
本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-06-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Qt君 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 不好的命名
  • 好的命名
  • 一些不恰当的命名
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档