Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Delphi: Общие вопросы > Массив как входной параметр |
Автор: MaxxSoftware 25.5.2005, 12:15 |
Не могу сделать массив входным параметром функции... Задача примерно такая, нужно сассив в котором куча строк запихать в функцию каторая с етим массивом работает и возвращает новый массив... Ну или пусть хотя бы не возвращет, не суть важно, главное в нее его передать пишу примерно что то такое: function func (a:array [0..10] of string):boolean ругается на скобки квадратные, убераю диапозон - все одно ругается... вообще можно как то это реализовать? |
Автор: Yanis 25.5.2005, 12:26 | ||||||
В качестве параметров можно передавать только тип. А массив это не тип. Значит делаем так:
Добавлено @ 12:32
Немного не корректно. Перефразирую: В качестве параметров можно передавать только переменные определённого типа. ![]() |
Автор: Dynamic 25.5.2005, 13:41 | ||||||
А константы и выражения??
Универсальнее так:
|
Автор: Yanis 25.5.2005, 13:52 | ||
Наверное всё равно они имеют тип. Пускай и не явно ![]() Добавлено @ 13:53 Константы точно имеют тип, а что за выражения? |
Автор: Dynamic 25.5.2005, 14:02 | ||||
Хотя вообще-то я прицепился к слову "переменные". ![]() |
Автор: Петрович 26.5.2005, 07:54 | ||||||||
А суть такова. Если например определены переменные:
То a1 и a2 имеют одинаковый тип и совместимы по присваиванию. А вот a1 и a3 имеют РАЗНЫЙ тип, и по присваиванию НЕ СВМЕСТИМЫ. А вот если:
Поэтому, если есть:
то непонятно, где ты еще возмешь переменную такого типа что бы передать ее в качестве параметра. Поэтому, компилятор сразу не допускает такого определения. Ну а решение тебе уже подсказали. |