Да, теперь я вижу, что вы делаете.
На самом деле, (.
и .)
являются просто альтернативными (но очень редкими!) Написаниями [
и ]
в Delphi.
Если PBox
является массивом, то PBox[a]
(или, что эквивалентно, PBox(.a.)
) потребует, чтобы a
было целым числом, верно?И если SBox1[x]
и SBox2[Y]
являются целыми числами, то и побитовые or
из них.(Побитовая or
- это операция, которая принимает два целых числа и возвращает новое целое число.) Следовательно, PBox(.SBox1[X] or SBox2[Y].)
является (SBox1[X] or SBox2[Y])
-ым элементом в массиве PBox
, то есть целым числом.Поэтому имеет смысл вычислить побитовое or
между Result
и этим целым числом, что и делается:
Result := Result or PBox(.SBox1[X] or SBox2[Y].);