Например, при выполнении участка кода
type
Person = class
...
end;
varp: Person := newPerson('Иванов',20);
...
p := nil;
память, отведенная под p, после присваивания ей nil станет недостижимой и будет собрана в непредсказуемый момент.
Отметим, что динамическая память, выделяемая процедурой New, не находится под управлением сборщика мусора, поэтому нуждается в явном освобождении вызовом процедуры Dispose. Именно поэтому работа с обычными указателями считается в PascalABC.NETустаревшей и не рекомендуется к использованию.
Системный модуль PABCSystem
Обзор системного модуля PABCSystem
Модуль PABCSystem называется системным и автоматически подключается первым к любой программе или модулю. Он содержит ряд процедур, функций, констант, типов.
* Константы модуля PABCSystem
* Типы модуля PABCSystem Общие типы
* Типы указателей
* Классы коллекций и связанные типы
* Процедурные типы
* Типы, связанные с регулярными выражениями
*
* Общие подпрограммы
* Подпрограммы ввода-вывода
* Функции для работы с последовательностями
* Подпрограммы для работы с динамическими массивами
* Математические функции
* Подпрограммы для работы с символами и строками
* Подпрограммы для работы с перечислимыми типами
* Подпрограммы для работы с файлами через файловые переменные
* Функции для работы с именами файлов
* Подпрограммы для работы с файлами, каталогами и дисками
Стандартные константы и переменные
Константы
MaxShortInt = shortint.MaxValue;
Максимальное значение типа shortint
|
MaxByte = byte.MaxValue;
Максимальное значение типа byte
|
MaxSmallInt = smallint.MaxValue;
Максимальное значение типа smallint
|
MaxWord = word.MaxValue;
Максимальное значение типа word
|
MaxInt = integer.MaxValue;
Максимальное значение типа integer
|
MaxLongWord = longword.MaxValue;
Максимальное значение типа longword
|
MaxInt64 = int64.MaxValue;
Максимальное значение типа int64
|
MaxUInt64 = uint64.MaxValue;
Максимальное значение типа uint64
|
MaxDouble = real.MaxValue;
Максимальное значение типа double
|
MinDouble = real.Epsilon;
Минимальное положительное значение типа double
|
MaxReal = real.MaxValue;
Максимальное значение типа real
|
MinReal = real.Epsilon;
Минимальное положительное значение типа real
|
MaxSingle = single.MaxValue;
Максимальное значение типа single
|
MinSingle = single.Epsilon;
Минимальное положительное значение типа single
|
Pi = 3.141592653589793;
Константа Pi
|
E = 2.718281828459045;
Константа E
|
NewLine: string;
Константа перехода на новую строку
|
Переменные
output
Стандартный текстовый файл вывода. По умолчанию связан с экраном, но может быть переназначен процедурой Assign
|
input
Стандартный текстовый файл ввода. По умолчанию связан с клавиатурой, но может быть переназначен процедурой Assign
|
shortstring = string[255]
Тип короткой размерной строки
|
DateTime
Тип даты и времени
|
Tuple
Тип кортежа
|
StringBuilder
Тип изменяемой строки символов
|
Encoding
Тип кодировки символов
|
TextFile
Синоним типа text
|
Стандартные процедурные типы
Action0
Представляет действие без параметров
|
Action
Представляет действие с одним параметром
|
Action2
Представляет действие с двумя параметрами
|
Action3
Представляет действие с тремя параметрами
|
Func0
Представляет функцию без параметров
|
Func
Представляет функцию с одним параметром
|
IntFunc = Func
Представляет функцию с одним параметром целого типа, возвращающую целое
|
RealFunc = Func
Представляет функцию с одним параметром вещественного типа, возвращающую вещественное
|
StringFunc = Func
Представляет функцию с одним параметром строкового типа, возвращающую строковое
|
Func2
Представляет функцию с двумя параметрами
|
Func3
Представляет функцию с тремя параметрами
|
Predicate
Представляет функцию с одним параметром, возвращающую boolean
|
Predicate2
Представляет функцию с двумя параметрами, возвращающую boolean
|
Predicate3
Представляет функцию с тремя параметрами, возвращающую boolean
|
Классы коллекций и связанные типы
Читать дальше