依赖隐式默认值是不好的做法,例如:
class Node
{
int red;
int green;
int blue;
bool grayscale;
Node next;
}
Run Code Online (Sandbox Code Playgroud)
而不是明确地设置它们:
class Node
{
int red = 0;
int green = 0;
int blue = 0;
bool grayscale = false;
Node next = null;
}
Run Code Online (Sandbox Code Playgroud)
我总是把它们放进去,因为它证明你已经考虑过那些成员的初始价值应该是什么.
bool isCool;
Run Code Online (Sandbox Code Playgroud)
可能意味着"我知道这在启动时并不酷",或者它可能意味着你没有想到它.
bool isCool = false;
Run Code Online (Sandbox Code Playgroud)
显然是一个刻意的决定.
我不认为这是一个坏习惯,因为默认值是使用该语言工作的开发人员应该知道/被迫学习的东西。
我想到的唯一缺点是不列出默认值可能会导致人们永远不会查看初始化值。如果它被初始化为默认值以外的其他值,可能需要一些注意。
| 归档时间: |
|
| 查看次数: |
806 次 |
| 最近记录: |