Запись (тип данных): различия между версиями

[отпатрулированная версия][отпатрулированная версия]
Содержимое удалено Содержимое добавлено
запрос источника, категория
стандартизация преамбулы
Строка 1:
Во многих [[язык программирования|языках программирования]], '''записьЗапись'''  — [[агрегирование (программирование)|агрегатный тип данных]], [[инкапсуляция (программирование)|инкапсулирующий]] без [[Сокрытие (программирование)|сокрытия]] набор {{iw|Значение (программирование)|значений|en|Value (computer science)}} различных [[Тип данных|типов]].
 
Применяется во многих [[язык программирования|языках программирования]]. В одних языках (например, в [[Паскаль (язык программирования)|Паскале]]) порядок размещения значений в памяти задаётся при определении типа и сохраняется на протяжении времени жизни объектов, что даёт возможность косвенного доступа (например, через [[Указатель (тип данных)|указатели]]); в других языках (например, в [[ML]]) порядок размещения не определён, так что доступ к значениям возможен только по квалифицированному идентификатору. В некоторых языках, хотя порядок следования и сохраняется, но [[Выравнивание данных|выравнивание]] контролируется компилятором, так что использование адресной арифметики может оказаться платформенно-зависимым. Некоторые языки позволяют присваивание между экземплярами разных записей, игнорируя различия в идентификаторах компонентов записей, и основываясь только на порядке следования. Другие языки, напротив, учитывают только совпадение имён, разрешая различия в порядке их определения.
 
Впервые записи были представлены в языке [[Кобол]], где они имели довольно сложную нотацию. При проверке согласования типов, Кобол учитывает только совпадение имён полей записей и не учитывает совпадение порядка их следования.
Строка 17:
{{примечания}}
 
{{rq|sources|stub}}
[[Категория:Типы данных]]