.NET глазами дельфийца. C# - Глобальные константы и переменные

ОГЛАВЛЕНИЕ

 

Глобальные константы

Семантическая нагрузка в Delphi - определение значений примитивныхтипов данных, доступных из любого места кода и неизменяемых в процессевыполнения программы.


const A = 100;
const B = 'строка';
D := A;
ShowMessage(B);

Семантический эквивалент в C# - статические константы.


// класс-обертка
class Const {
// описание констант
public const int A = 100;
public const string B = "строка";
}
// использование констант
int a = Const.A;
MessageBox.Show(Const.B);

Кроме статических констант C# предоставляет механизм статических полей, который позволяет программисту использовать вкачестве констант не только примитивные значения, но и объекты. Примеркода:


// класс-обертка
class Const {
// число-константа
public static readonly int A = 1;
// объект-константа
public static readonly MyObject Obj = new MyObject();

Глобальные переменные

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


var A: integer;
B := A;
A := 1;

Семантический эквивалент в C# - статические поля классов.


// класс-обертка
class Globals {
// определение статических переменных
// инициализация по умолчанию = 0
public static int A;
// одновременные описание и инициализация
public static int B = 1;
}
// использование статических переменных
int a = Globals.A;
Globals.A = 1;
int b = Globals.B;
Globals.B = 1;