今日、このコードブロックに気付き、このような操作がどこかに文書化されているのか、それがなぜこのように(パフォーマンスなど)行われたのか不思議に思っていました。乗算演算子はセットについて文書化されていますか?
var
Shift: TShiftState
begin
if [ssShift, ssCtrl] * Shift <> [] then
begin
...
end;
end;
それは私のテストから私に見て、ちょうどシフトがssShift
またはssCtrl
のいずれかが含まれているかどうかをチェックされ、このようなコードを見て。これは文書化された振る舞いですか、それともセットが実際に内部的に整数として格納されているという事実を利用しているだけですか?
内部整数表現は、すべて単独で与えられた計算を可能にするのに十分ではないであろう。 –