跳转到内容

Ada 编程/关键字/or

来自维基教科书,开放书籍,构建开放世界

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 风格指南建议在切换到另一个之前比较两种形式的性能。通常,使用or else 仅当第二个表达式涉及函数调用时,才出于性能原因。

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

与 C/C++ 不同,Ada 简短运算符不是求值布尔表达式的标准方式。这是因为 Ada 默认情况下旨在执行通常更安全的操作,但允许程序员请求不同的行为。

数组上的布尔运算符

[编辑 | 编辑源代码]

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

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;

按位运算符

[编辑 | 编辑源代码]

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

选择语句

[编辑 | 编辑源代码]

参见 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 or 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 record while
digits rem with
do mod renames
requeue (Ada 95) xor


Ada 运算符
and and then > + abs &
or or else >= - mod
xor = < * rem in
not /= <= ** / not in
华夏公益教科书