Delphi的类和对象,九- 类运算符as、is

类的运算符只有四种:

  =、<>、ad、is

(1)”=“运算符用来判断两个类是否相等

(2)”<>“用来判断两个类是否不相等

(3)is运算符是双目运算符,用来判断一个对象是否是一个类的实例或者一个类的子类的实例,如果是返回 true 反之False

(4)as运算符是双目运算符,用来将对象转换成自身类或是父级类的类型,该对象可以为空

var
  i: integer;
begin
  if Edit1.ClassType = Edit2.ClassType then
  ShowMessage('类相同');

  if Edit1.ClassType <> Edit2.ClassType then
  ShowMessage('类不相同');

  for i:= 0 to Self.ControlCount-1 do
  begin
    if Self.Controls[i] is TEdit then
      Self.Controls[i].Enabled:= False;
  end;

  for i:=0 to Self.ControlCount-1 do
  begin
    if Self.Controls[i] is TEdit then
      (Controls[i] as TEdit).Color:= clInfoBk;
  end;
end;