<<
>>

Нетипизированные параметры

В Borland Pascal допускается использовать параметры, тип которых не указан. Такие параметры могут передаваться в подпрограмму только по ссылке (как параметры-переменные), так как в этом случае в подпрограмму реально передается адрес параметра.

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

Для приведения нетипизированного параметра к определенному типу можно использовать:

• автоопределенное преобразование типов;

• наложенное описание переменной определенного типа.

При автоопределенном преобразовании типов тип выражения указывают явно (см. параграф 2.5), например:

Procedure Proc(Var:a);...

...b:= Integer(a)+10;...

Для наложения переменной определенного типа используют описание с absolute (см. параграф 2.3), например:

Procedure Proc(Var.a);...

Var г .real absolute a;...

При этом переменная г оказывается в памяти размещенной в том же месте, что и нетипизированный параметр а, и, соответственно, любое изменение г приведет к изменению а.

Пример 5.8. Разработать подпрограмму, которая может суммировать как элементы массива целых чисел, так и элементы массива вещественных чисел.

Тип массива подпрограмма будет определять по значению третьего параметра, для которого объявим специальный перечисляемый тип. В разделе описаний подпрограммы определим шаблоны для каждого случая. Шаблон представляет собой описание массива соответствующего типа максимально возможного размера 64 Кб/

<< | >>
Источник: Иванова Г.С. Основы программирования. 2002

Еще по теме Нетипизированные параметры:

  1. § 3.4. Параметры социальной структуры организации
  2. Временные параметры вопроса
  3. ПАРАМЕТР
  4. 45. Структура и социально-психологические параметры малой группы
  5. IV. 1. 3. Сети. Сеть линий - это любая пара однопараметрических линий на поверхности, гладко зависящих от параметра. примерами могут служить параллели и меридианы на поверхности земного шара.
  6. СТИМУЛ: МОДЕЛЬ НЕРВНАЯ
  7. ИНТРОСПЕКЦИЯ АНАЛИТИЧЕСКАЯ
  8. АНКЕТА ЭКСПЕРТА
  9. АКТИВНОСТЬ ОБЩАЯ
  10. МЕТОД МИОГРАММЫ
  11. Таблица. Иерархия функций
  12. Правило объяснения причин «индивидуального действия» «сильной стороной» личности.
  13. 13.1. Математическая модель катастрофы "сборка"
  14. ДЕТЕКТОР
  15. СЛУХ
  16. АНАЛИЗ КЛАСТЕРНЫЙ