Delphi-Help

As

Печать
Рейтинг пользователей: / 0
ХудшийЛучший 

As

Описание

Ключевое слово As используется для приведения объектов или интерфейсов от одного типа к другому.
Приведение позволяет объекту быть упомянутым родительским типом класса. Например, все объекты могут упомянуться, как тип класса TObject :
button1 := Button1 as TObject;
Если объект уже был приведен к родительскому типу класса, то разрешается приведение к правильному дочернему типу класса. Код примера показывает это для объекта класса TForm класса, когда он передаётся как тип TObject к методу формы OnCreate.

Пример кода

var
myForm  : TForm;
myForm1 : TForm1;

myByte  : Byte;
myChar  : Char;

begin
myByte := 65;

// Приведение этого Byte к Char, используя стандартный метод приведения
myChar := Char(myByte);
ShowMessage('Стандартное приведение myByte к Char = '+myChar);

// Приведите Form к myForm, используя стандартное приведение
myForm := TForm1(Sender);
ShowMessage('Используя стандартное приведение Sender = '+myForm.Caption);

// Cast the form using the as keyword
myForm := Sender As TForm;
ShowMessage('Sender как допустимый порожденный = '+myForm.Caption);

myForm := Sender As TForm1;
ShowMessage('Sender сам непосредственно = '+myForm.Caption);

// Создание нового объекта TForm, а не TForm1
myForm := TForm.Create(self);
myForm.Caption := 'New form';

// Стандартное приведение не делает никакой проверки, если мы приводим TForm к TForm1
myForm1 := TForm1(myForm);
ShowMessage('Стандартное приведение к неправильному порожденному = '+myForm1.Caption);

// Приведение используя 'as' отклоняющего приведение к недопустимому дочернему объекту
myForm1 := myForm As TForm1;
// Следующие приведения ошибки EInvalidCast
ShowMessage('Приведение As к плохому типу = '+myForm1.Caption);
end;

Стандартное приведение myByte к Char = A
Используя стандартное приведение Sender = Form1
Sender как допустимый порожденный = Form1
Sender сам непосредственно = Form1
Стандартное приведение к неправильному порожденному = New form
EInvalidCast error : 'Invalid cast type'

Примечание

Используйте ключевое слово Is для проверки качеств приведения прежде чем испытывать приведение.
При попытке использования значения недопустимого приведения оно выдает EInvalidCast.

Авторизация



Счетчики