访问数组中的元素时,方括号的使用方式如下:
{'X is an int and Numbers is an int array'}
X := Numbers[8];
然而,在阅读其他人的代码时,我有时会发现以下语法:
{'PBox , SBox1 , SBox2 are arrays of int , And X,Y are ints'}
Result := Result or PBox(.SBox1[X] or SBox2[Y].);
- 数组名称后面有括号是什么意思,如
PBox(someNumber)
?这是访问数组元素的另一种方式吗?
- “.” 是什么意思? SBox1之前和SBox2之后是什么意思? SBox1 和 SBox2 都是数组。代码编译没有错误,但我不知道这些点的用途。
是的,现在我明白你做了什么。
实际上,(.
and .)
只是另一种写作方式(但非常罕见!)[
and ]
在德尔福。
If PBox
是一个数组,那么PBox[a]
(或者,等价地,PBox(.a.)
)需要a
是一个整数,对吗?而如果SBox1[x]
and SBox2[Y]
是整数,按位也是or
其中。 (按位or
是一个接受两个整数并返回一个新整数的运算。)因此,PBox(.SBox1[X] or SBox2[Y].)
is the (SBox1[X] or SBox2[Y])
数组中的第一个元素PBox
,即一个整数。所以按位计算是有意义的or
之间Result
和这个整数,这就是所做的事情:
Result := Result or PBox(.SBox1[X] or SBox2[Y].);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)