Переменные

Переменные представляют места в памяти используемые для хранения данных. Каждая переменная имеет тип, который определяет какие значения могут быть сохранены в переменной. Язык Fore.NET является типо-безопасным и компилятор гарантирует что значения, хранящиеся в переменных, всегда имеют соответствующий тип. Значение переменной может быть изменено посредством выполнения оператора присваивания.

Переменная должна быть обязательно определена перед своим использованием.

Категории переменных

Язык Fore.NET определяет семь категорий переменных: статические переменные, экземплярные переменные, элементы массивов, параметры передаваемые по значению, параметры передаваемые по ссылке, выходные параметры и локальные переменные.

Значения по умолчанию

Следующие категории переменных автоматически инициализируются значениями по умолчанию:

Значение по умолчанию для переменной зависит от ее типа и определяется следующим образом:

Ссылки на переменные

Ссылка на переменную - это выражение, которое классифицируется как переменная. Ссылка на переменную указывает на место в памяти, которое может быть использовано как для получения значения, так и для его изменения.

variable-reference:

expression

В языках C и С++ ссылку на переменную также называют l-value.

Пример

Namespace UserApplicaton
//Переменные, доступные во всей сборке
Var
    GlobalValue: double;
    GlobalObject: object;
    
    Public Class UserObject
        //Статическая переменная со значением по умолчанию
        Shared Options: integer = 10;
        //Экземплярная переменная
        ObjectValues: array Of double;
        
        Constructor UserObject();
        Begin
            ObjectValues := New Double[Options]
        End Constructor UserObject;
        
        //Параметр i передается по значению
        Public Property Item[i: integer]: double
            Get
            Begin
                //Получение значения элемента массива
                Return ObjectValues[i];
            End Get
            Set
            Begin
                //Установка значения для элемента массива
                ObjectValues[i] := Value;
            End Set
        End Property Item;
        
        //Параметр Summ передается по ссылке
        Sub SummElement(Var Summ: Double);
        //Локальные переменные, доступные только в процедуре
        Var
            d, d1: integer;
        Begin
            For Each d In ObjectValues Do
                d1 := d1 + d;
            End For;
            Summ := d1;
        End Sub;
    End Class UserObject;
End Namespace;

См.также:

Описания и синтаксические правила