Programming languages 布尔真或假和负返回
返回布尔值(真或假)和返回负值之间的区别是什么?这取决于您使用返回值的目的。一个是二进制的(成功或失败),另一个是离散值,可用于错误代码。我所做的通常是负值表示错误,0表示成功,正值表示警告。当描述进程的成功或失败时,通常使用布尔值 “成功”(返回Programming languages 布尔真或假和负返回,programming-languages,Programming Languages,返回布尔值(真或假)和返回负值之间的区别是什么?这取决于您使用返回值的目的。一个是二进制的(成功或失败),另一个是离散值,可用于错误代码。我所做的通常是负值表示错误,0表示成功,正值表示警告。当描述进程的成功或失败时,通常使用布尔值 “成功”(返回true)或“失败”(返回false) 有些函数(就像socket())返回一个“socket描述符”,它是一个正值。在本例中,报告出错的一种方法是返回一个超出有效范围的值,因此返回一个负值 然而,请记住,这不是一个绝对的事实。一个开发人员可能决定返回
true
)或“失败”(返回false
)
有些函数(就像socket()
)返回一个“socket描述符”,它是一个正值。在本例中,报告出错的一种方法是返回一个超出有效范围的值,因此返回一个负值
然而,请记住,这不是一个绝对的事实。一个开发人员可能决定返回一个正值表示错误,返回0表示成功。(就像程序退出状态一样)
了解返回值含义的唯一方法是阅读文档有时,您希望根据方法是否成功执行某些代码来返回true/false
但是,您可能需要更多关于方法失败原因的详细信息,但不能抛出异常(例如,该语言没有异常)。在这种情况下,您可以返回一个整数值作为一种错误代码。您返回的值类型可能有两种可能的输出 另一种方法是返回一个类型的值,该类型可以有更多可能的输出 顺便说一句,在大多数编程语言中,0被认为是错误的,而其他一切都被认为是正确的。我的想法是,你认为在大多数语言中,任何否定都会被认为是错误的 您可能希望返回许多不同的负数,例如不同的错误代码。或者,您可能只是有一个合格/不合格的标准。根据您所处的场景,您可以使用布尔或整数返回类型。
- 当您的 方法只返回yes/no
- 需要指示时使用数字 除此之外还有别的事吗 成功完成
- 如果需要bool结果,请返回bool(卡车);如果需要整数,请返回整数(苹果)。
例如,在javascript中,您可以
var ret = 0;
if (ret){//is ret true?
alert('Never gets here');
}
if (!ret){//is ret false?
alert('I will popup');
}
但如果确实需要测试布尔值,则必须执行以下操作:
var ret = 0;
if (ret === true){//if it is true AND boolean
alert('Never gets here');
}
var ret = false;
if (ret === false){//if it is false AND boolean
alert('I will popup');
}
如果需要两个以上的返回码(真/假),则必须返回一个整数。C++中有一个BoOL的Type,它意味着可以使用BoOL作为返回类型,返回值为真和假,如果愿意,可以使用1。BOOL、TRUE和FALSE的typedef只是用来提高代码的可读性,但它只是返回一个int。您可能更喜欢使用“out”参数,例如:
public bool MyFunction(object input, out int status) {...}
因此,当函数成功/失败时,您可以选择“真”或“假”,并且还可以设置一个staus变量,用于任何其他有关所发生事件的信息。驾驶卡车或吃苹果之间有什么区别?正如您(OP)所说:返回布尔值(真或假)之间有区别返回一个负值。听起来像是一个坏笑话的开始。。。有什么妙趣横生的事吗?我得相信那些为这个可怕的问题精心设计了明智答案的人。。。如果我是Richard J.Ross III,我会投他们所有人的反对票。是的,你是对的,因为我看到很多代码返回的是否定的,有时是肯定的,这让我很困惑