跳转到内容

Ada 编程/关键字/或

来自 Wikibooks,开放书籍,开放世界

Ada. Time-tested, safe and secure.
Ada. 经时间考验,安全可靠。

逻辑运算符

[编辑 | 编辑源代码]

布尔运算符

[编辑 | 编辑源代码]
X : Boolean := A < 10 or A > 20;

布尔短路运算符

[编辑 | 编辑源代码]

在下面的例子中,函数G仅在F(X)返回False值时被调用。

if F(X) or else G(Y) then

    Walk_The_Dog;
 
end if;

此短路运算符有时用于加速布尔表达式的计算,但 Ada 风格指南建议在将一种形式切换到另一种形式之前,比较两种形式的性能。一般来说,使用 else出于性能考虑,仅当第二个表达式包含函数调用时。

当第二个表达式已知会引发异常(除非第一个表达式为False)时,也使用 else形式。

与 C/C++ 不同,Ada 短路运算符不是计算布尔表达式的标准方法。这是因为 Ada 默认设计为执行一般情况下更安全的做法,但也允许程序员请求不同的行为。

数组上的布尔运算符

[编辑 | 编辑源代码]

或运算符应用于来自左右数组的每对布尔元素。结果与左操作数具有相同的边界。

type Day_Of_Month is range 1 .. 31;            
type Month_Array is array (Day_Of_Month) of Boolean;

X : Month_Array := Function_1;
Y : Month_Array := Function_2;
Z : Month_Array := X or Y;

按位运算符

[编辑 | 编辑源代码]

运算符可以与模类型一起使用以执行按位运算。

选择语句

[编辑 | 编辑源代码]

请参阅 Ada 编程/任务#选择性等待.

请参阅 Ada 编程/任务#超时.

另请参阅

[编辑 | 编辑源代码]

维基教科书

[编辑 | 编辑源代码]

Ada 95 参考手册

[编辑 | 编辑源代码]

Ada 2005 参考手册

[编辑 | 编辑源代码]

Ada 质量和风格指南

[编辑 | 编辑源代码]


Ada 关键字
abort else new return
abs elsif not reverse
abstract (Ada 95) end null
accept entry select
access exception of separate
aliased (Ada 95) exit some (Ada 2012)
all others subtype
and for out synchronized (Ada 2005)
array function overriding (Ada 2005)
at tagged (Ada 95)
generic package task
begin goto parallel (Ada 2022) terminate
body pragma then
if private type
case in procedure
constant interface (Ada 2005) protected (Ada 95) until (Ada 95)
is use
declare raise
延迟 limited range when
delta loop 记录
数字 余数
重命名
requeue (Ada 95) 异或


Ada 运算符
and 并且 > + abs &
或者 >= -
异或 = < * 余数 in
not /= <= ** / 不包含
华夏公益教科书