Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Обобщенные подпрограммы в качестве параметров↑ ⇐ ПредыдущаяСтр 14 из 14 Содержание книги
Поиск на нашем сайте
Обобщенные подпрограммы в качестве параметров Обобщенная подпрограмма может выступать в качестве формального параметра другой обобщенной подпрограммы. Например, в классе System.Array имеется несколько статических обобщенных методов с обобщенными подпрограммами в качестве параметров. Так, System.Array.Find имеет следующий прототип: System.Array.FindAll<T>(a: array of T; pred: function(x: T): boolean): array of T; и возвращает подмассив массива a элементов T, удовлетворяющих условию pred. Приведем пример вызова этой функции: function f(x: integer): boolean; var a: array of integer := (1,3,6,5,8); Здесь возвращается массив b, содержащий все четные значения массива a в том же порядке. Управление памятью Все ссылочные типы в .NET находятся под управлением так называемого сборщика мусора. Это значит, что выделенная вызовом конструктора память никогда не возвращается явно вызовом деструктора. После того как объект становится не нужным, ему следует присвоить nil. При нехватке динамической памяти выполнение программы приостанавливается, и запускается специальная процедура, называемая сборкой мусора. Она определяет все так называемые достижимые объекты. Если на данный объект более никто не указывает, то он считается недостижимым и будет собран сборщиком мусора. Время вызова сборщика мусора считается неопределенным. Например, при выполнении участка кода type память, отведенная под p, после присваивания ей nil станет недостижимой и будет собрана в непредсказуемый момент. Отметим, что динамическая память, выделяемая процедурой New, не находится под управлением сборщика мусора, поэтому нуждается в явном освобождении вызовом процедуры Dispose. Именно поэтому работа с обычными указателями считается в PascalABC.NET устаревшей и не рекомендуется к использованию.
|
||||
Последнее изменение этой страницы: 2024-06-27; просмотров: 2; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.137.177.204 (0.005 с.) |