Переменная - элемент кода, значение которого может изменяться в процессе выполнения программы. Тип переменной задаётся на стадии объявления, в дальнейшем переменная может принимать значения только заданного типа или совместимого типа.
Переменные вводятся в программу для хранения и передачи данных внутри неё, могут менять своё значение во время выполнения кода. Описание переменных начинается с ключевого слова Var, за которым располагается последовательность самих определений переменных. Переменные могут быть объявлены на уровне пространств имён, в процедурах/функциях и свойствах. В классах аналогом переменных являются поля.
Определение переменной заключается в указании её имени (идентификатора) и типа. В качестве типа переменной может быть указан класс, интерфейс или перечислимый тип. Имя и тип разделяются двоеточием. После объявления и описания переменной должен стоять символ ";". Однотипные переменные могут перечисляться через запятую перед объявлением их типа. Концом описания переменных будет начало следующего блока кода или конструкции.
Переменная может хранить конкретное значение либо ссылку на значение. Переменная существует, пока выполняется тот код, в котором она определена:
Var
<идентификатор>: <тип>;
// Переменная в глобальном пространстве имён
Var global_A: Integer = 1000;
Namespace A
// Переменная в пространстве имён A
Var namespace_A: Integer = 100;
Class CTest: Object
// Переменная в классе
class_A: Integer = 10;
Public Sub Test;
// Переменная в процедуре
Var
sub_A: Integer = 1;
Begin
Debug.WriteLine(global_A);
Debug.WriteLine(namespace_A);
Debug.WriteLine(class_A);
// Изменение значения свойства, при котором изменится значение поля
VarValue := 500;
Debug.WriteLine(class_A);
Debug.WriteLine(VarValue);
Debug.WriteLine(sub_A);
End Sub Test;
Public Property VarValue: Integer
Get
// Переменная блоке Get свойства
Var
temp: Integer = 10;
Begin
Return class_A + temp;
End Get
Set
// Переменная блоке Set свойства
Var
temp: Integer = -10;
Begin
class_A := Value + temp;
End Set
End Property VarValue;
End Class CTest;
End Namespace A;
Sub Main;
Var
Obj: A.CTest;
Begin
Obj := New A.CTest.Create;
Obj.Test;
End Sub Main;
См. также: