Delphi 的运算符列表

分类

运算符

操作

操作数

结果类型

范例

算术运算符

+

整数,实数

整数,实数

X + Y

-

整数,实数

整数,实数

Result - 1

*

整数,实数

整数,实数

P * InterestRate

/

实数除

整数,实数

实数

X / 2

div

整数除

整数

整数

Total div UnitSize

mod

取模

整数

整数

Y mod 6

+(一元)

符号等同

整数,实数

整数,实数

+7

-(一元)

符号相反

整数,实数

整数,实数

-X

布尔运算符

not

否定

布尔型

Boolean

not (C in MySet)

and

布尔型

Boolean

Done and (Total > 0)

or

布尔型

Boolean

A or B

xor

异或

布尔型

Boolean

A xor B

逻辑(按位)运算符

not

按位否定

整数

整数

not X

and

按位与

整数

整数

X and Y

or

按位或

整数

整数

X or Y

xor

按位异或

整数

整数

X xor Y

shl

按位左移

整数

整数

X shl 2

shr

按位右移

整数

整数

Y shr I

字符串运算符

+

连接

字符串、压缩串、字符

字符串

S + '.'

指针运算符

+

指针加

字符指针,整数

字符指针

P + I

-

指针减

字符指针,整数

字符指针,整数

P - Q

^

指针解除参照

指针

指针的基类型

P^

=

相等

指针

Boolean

P = Q

<>

不等

指针

Boolean

P <> Q

集合运算符

+

并集

集合

集合

Set1 + Set2

-

差集

集合

集合

S – T

*

交集

集合

集合

S * T

<=

子集

集合

Boolean

Q <= MySet

>=

超集

集合

Boolean

S1 >= S2

=

相等

集合

Boolean

S2 = MySet

<>

不等

集合

Boolean

MySet <> S1

in

成员

序数,集合

Boolean

A in Set1

关系运算符

=

相等

简单类型、类、类引用、接口、串、压缩串

Boolean

I = Max

<>

不等

简单类型、类、类引用、接口、串、压缩串

Boolean

X <> Y

<

小于

简单类型、串、压缩串、PChar

Boolean

X < Y

>

大于

简单类型、串、压缩串、PChar

Boolean

Len > 0

<=

小于或等于

简单类型、串、压缩串、PChar

Boolean

Cnt <= 1

>=

大于或等于

简单类型、串、压缩串、PChar

Boolean

I >= 1

类运算符

as

转换

类和类的实例

is

判断

=

关系运算符 = 和 <> 也作用于类

<>

地址(@)运算符

@X

如果X是一个变量,那么@X返回X的地址。当编译指示 {$T-} 有效时,@X是Pointer类型; 而在编译指示 {$T+} 状态下时,@X是 ^T 类型,这里的T是X的类型。

@F

如果 F 是一个例程(函数或过程),那么@F返回 F 的入口点,@F的类型总是Pointer。

@类中方法

当 @ 适用于定义在类中的方法时,方法标识符必需被类的名称限定。例如: @TMyClass.DoSomething