Облака / Clouds
    Go to Copy.com
    Copy.com
    The bast cloud service
    Get 20 GB free!!!
    Support WebDav.
    Show more >>

    Go to Dropbox.com
    Dropbox.com
    time-tested cloud storage
    Support WebDav.
Все бесплатно
    Все ссылки на файлы, расположенные на страницах сайта, добавлены пользователями и доступны для бесплатного скачивания. За содержание этих файлов администрация сайта ответственности не несет.



Вопросы
  Определить МАС-адрес карты
   Категория: Интернет и Сети
  Отступ в Memo
   Категория: Компоненты
  Пароль на ADO
   Категория: Базы данных
  Как в Memo прокрутить текст
   Категория: Компоненты
  Тpансляция ошибок в BDE
   Категория: Базы данных
  Как показать balloon tooltips в программе
   Категория: Приложение
  Номер строки в memo под курсором
   Категория: Текст и строки
  Группировка TopAdvGrid
   Категория: Компоненты

Delphi - Справочник: Variant

ABCDEFGHIJKLMNOPQRSTUVWXYZ

  << Вернуться  

 Variant
type Variant;
Тип (Unit System)
Тип переменной, который может держать изменяющиеся типы данных
Описание:
Тип данных Variant обеспечивает гибкий универсальный тип данных.

Он может содержать всё, но структурированные данные и указатели. Но используйте с осторожностью, так как при использовании Variant код приобретает неясность и приобретает потенциальные ошибки при выполнении программы.

Используйте VarType вместе с VarTypeMask, чтобы определить текущий типы данных, в который установлен Variant.

Тип Variant полезен в очень определенных обстоятельствах, где типы данных и их содержание определяются во время выполнения, а не во времени компиляции.
Пример кода: Иллюстрирование нескольких Variant назначений и результирующих типов данных

var myVar : Variant; begin // Назначение различных значений Variant // и затем показ результирующего типа Variant ShowMessage('Variant значение = not yet set'); ShowBasicVariantType(myVar); // Простое значений myVar := 123; ShowMessage('Variant значение = 123'); ShowBasicVariantType(myVar); // Вычисленное значение, используя Variant и константу myVar := myVar + 456; ShowMessage('Variant значение = 123 + 456'); ShowBasicVariantType(myVar); myVar := 'String '+IntToStr(myVar); ShowMessage('Variant значение = String 579'); ShowBasicVariantType(myVar); end; // Показ тип variant procedure TForm1.ShowBasicVariantType(varVar: Variant); var typeString : string; basicType : Integer; begin // Получение основного типа Variant : // это означает, исключение массива или косвенных модификаторов basicType := VarType(varVar) and VarTypeMask; // Установка строки для согласования типа case basicType of varEmpty : typeString := 'varEmpty'; varNull : typeString := 'varNull'; varSmallInt : typeString := 'varSmallInt'; varInteger : typeString := 'varInteger'; varSingle : typeString := 'varSingle'; varDouble : typeString := 'varDouble'; varCurrency : typeString := 'varCurrency'; varDate : typeString := 'varDate'; varOleStr : typeString := 'varOleStr'; varDispatch : typeString := 'varDispatch'; varError : typeString := 'varError'; varBoolean : typeString := 'varBoolean'; varVariant : typeString := 'varVariant'; varUnknown : typeString := 'varUnknown'; varByte : typeString := 'varByte'; varWord : typeString := 'varWord'; varLongWord : typeString := 'varLongWord'; varInt64 : typeString := 'varInt64'; varStrArg : typeString := 'varStrArg'; varString : typeString := 'varString'; varAny : typeString := 'varAny'; varTypeMask : typeString := 'varTypeMask'; end; // Показ типа Variant ShowMessage('Variant тип = '+typeString); end;

Результат:
Variant значение = ещё не установлено
Variant тип = varEmpty
Variant значение = 123
Variant тип = varByte
Variant значение = 123 + 456
Variant тип = varInt64
Variant значение = String 579
Variant тип = varString
Примечание:
Строки Variant не могут быть индексированы.

  << Вернуться