Ich habe heute diesen Block Code bemerkt und habe mich gefragt, ob diese Art von Operationen irgendwo dokumentiert sind und warum es so gemacht wurde (Performance, etc).Ist der Multiplikationsoperator für Mengen dokumentiert?
var
Shift: TShiftState
begin
if [ssShift, ssCtrl] * Shift <> [] then
begin
...
end;
end;
Es sieht für mich aus meinen Tests und auf der Suche nur auf den Code wie diese Überprüfung wird, wenn die Umschalttaste entweder ssShift
oder ssCtrl
enthält. Ist dieses dokumentierte Verhalten oder nutzt es nur die Tatsache, dass die Menge tatsächlich intern als ganze Zahl gespeichert wird?
Eine interne Integer-Darstellung würde nicht ausreichen, um die gegebene Berechnung von selbst alle zu ermöglichen. –