1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- { %NORUN }
- program tb0649;
- {$mode objfpc}
- type
- TEnum = (
- eOne,
- eTwo,
- eThree
- );
- TEnumSet = set of TEnum;
- TByteSet = set of Byte;
- TTest = class
- end;
- operator + (aLeft: TTest; aRight: array of Byte): TTest;
- begin
- Writeln('Array of Byte');
- Result := aLeft;
- end;
- operator + (aLeft: TTest; aRight: TByteSet): TTest;
- begin
- Writeln('Set of Byte');
- Result := aLeft;
- end;
- operator + (aLeft: TTest; aRight: array of TEnum): TTest;
- begin
- Writeln('Array of TEnum');
- Result := aLeft;
- end;
- operator + (aLeft: TTest; aRight: TEnumSet): TTest;
- begin
- Writeln('Set of TEnum');
- Result := aLeft;
- end;
- var
- t: TTest;
- begin
- t := t + [1, 2, 3];
- t := t + [eOne, eTwo];
- end.
|