对于无符号长

时间:2015-06-07 15:40:05

标签: c++

我已多次看到这种习惯,例如这段代码:

void GetCurrentState(unsigned long bState);

我用过这样的话:

GetCurrentState(true);

它应该是这样的:

GetCurrentState(1); 
GetCurrentState(TRUE);
GetCurrentState(anynumber);

1 个答案:

答案 0 :(得分:1)

是的,IMO,使用数字来表示布尔值是糟糕的编程习惯。

对于没有布尔类型的语言,这种做法很古老。

布尔数据类型将有助于防止程序可能为 true 传递除1之外的其他值的问题,并且对1进行比较而不是不为零

如果必须,请遵守遗留代码。推广布尔类型,您将获得奖励(代码中的缺陷更少)。

相关问题