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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

分类 范围 字节 备注
简单类型 序数 整数 Integer -2147483648 .. 2147483647 4 有符号32位
Cardinal 0 .. 4294967295 4 无符号32位
Shortint -128 .. 127 1 有符号8位
Smallint -32768 .. 32767 2 有符号16位
Longint -2147483648 .. 2147483647 4 有符号32位
Int64 -263 .. 263 8 有符号64位
Byte 0 .. 255 1 无符号8位
Word 0 .. 65535 2 无符号16位
Longword 0 .. 4294967295 4 无符号32位
字符 AnsiChar(Char) ANSI字符集   8位
WideChar Unicode字符集   16位
布尔 Boolean False < True       Ord(False) = 0       Ord(True) = 1       Succ(False) = True       Pred(True) = False 1  
ByteBool False <> True       Ord(False) = 0       Ord(True) <> 0        Succ(False) = True       Pred(False) = True 1  
WordBool 2  
LongBool 4  
枚举        
子界        
实数   Real 5.0×10-324 .. 1.7×10308 8 [精度]15..16
Real48 2.9×10-39 .. 1.7×1038 6 [精度]11..12; 向后兼容
Single 1.5×10-45 .. 3.4×1038 4 [精度]7..8
Double 5.0×10-324 .. 1.7×10308 8 [精度]15..16
Extended 3.6×10-4951 .. 1.1×104932 10 [精度]19..20
Comp -263 + 1 .. 263 - 1 8 [精度]19..20
Currency -922337203685477.5808 ..   922337203685477.5807 8 [精度]19..20
字符串     ShortString 255个字符 2..256B 向后兼容
AnsiString 大约 231 个字符 4B..2GB 8位(ANSI)字符
WideString 大约 230 个字符 4B..2GB 多用户服务和       多语言应用程序; 和com定义的BSTR兼容
其他 String       String[0..255]       PChar       PAnsiString       PWideString    
结构类型 集合   Set 最多256个元素[0..255]    
数组 静态数组        
动态数组        
记录   Record      
文件   File      
  Class      
类引用   Class reference      
接口   Interface      
指针类型 无类型指针   Pointer      
有类型指针 预定义类型指针 PAnsiString       PString       PByteArray       PCurrency       PDouble       PExtended       PSingle       PInteger       POleVariant       PShortString       PTextBuf       PVarRec       PVariant       PWideString       PWordArray      
过程类型 程序过程类型   Procedural      
对象过程类型   Procedural      
变体类型     Variant      
  OleVariant      

 

posted @ 2017-03-03 10:12  倾月轩萱  阅读(2420)  评论(0编辑  收藏  举报