左或右应表示为布尔值还是枚举[关闭]
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了左或右应表示为布尔值还是枚举[关闭]相关的知识,希望对你有一定的参考价值。
对于包含布尔值和枚举作为基本类型的任何语言,我应该将该类型用于存储是否为left
或Right
的变量。
我最初的直觉是使用枚举,因为它更具描述性 - 绝对是枚举的一大优点。
但是在我看来,在一个值必须是Left
或Right
的情况下,布尔值会更安全且内存效率更高 - 这两个点都支持或使用布尔值。
还有一个问题是布尔值具有自然方向,但对于像Left
Right
这样的值,没有自然映射意味着你需要使用类似这样的值isLeft
- 反对使用布尔值。
是否存在这样的值的约定或最佳实践,这些值既是二元的又是独占的,但是对于开/关,零/一或任何其他自然布尔解释没有任何直接对称性?
答案
上下文:我主要使用C ++
我会使用一个枚举器。我不知道看某人的项目true
是否意味着left
或right
没有检查文档,但是对于调查员来说显然是这样。我还担心代码的不同部分会改变默认值。
您可以使用常量(例如,const bool left = true;
)绕过更改的默认值,但这会在代码中引入其他有趣的选项(bool is_on = right;
)。
另一答案
我不知道其他开发人员的意见是什么,但我的意思是:你的编码效率越高越好,可读性就是第二。
所以布尔几乎总是更有效率。这就是我要去的那个。
以上是关于左或右应表示为布尔值还是枚举[关闭]的主要内容,如果未能解决你的问题,请参考以下文章