Форум: "Основная";
Текущий архив: 2006.04.30;
Скачать: [xml.tar.bz2];
ВнизДвумерные массивы строк в качестве параметров процедур и функций Найти похожие ветки
← →
Frosty © (2006-03-23 15:28) [0]Вопрос вот в чем:
имеються различные (разного размера) двумерные массивы константы:
Const
с1=..;
с2=..;
с3=..;
с4=..;
caArray1 :array [0..C1-1, 0..c2-1+1] of string =
( "0" , *** , "1" ),
*
*
*
( "1" , *** , "1" ));
caArray2 :array [0..C3-1, 0..c4-1+1] of string =
( "0" , *** , "1" ),
*
*
*
( "1" , *** , "1" ));
***
И соответственно процедура иль функция
function f1 (CompStateArray: array of string): boolean;
Как можно передать в эту функцию массивы описанные выше?
И как их юзать в теле функции? Как приведено здесь выдает ошибку Incompatible Types.
Можно конечно переменные инициализить константами, но хочеться прям в лоб передавать в функцею любой константный двумерный строковый массив. Может кто подскажет?
← →
Джо © (2006-03-23 15:32) [1]
type
TCaArray1 = array [0..C1-1, 0..c2-1+1] of string;
const
caArray1 : TCaArray1 = ...
function f1 (CompStateArray: TCaArray1 ): boolean;
В таком духе.
← →
Frosty © (2006-03-23 15:51) [2]Тогда я буду передавать в функцию массивы только одного размера.
А хотелось бы разных, как и было указано в вопросе.
← →
Старик (2006-03-23 16:21) [3]Frosty:
Для этого есть динамические массивы.
Одномерный:
var ttt : array of integer/string/byte etc.
begin
SetLength(ttt, Num); где Num - это параметр, который определит размер твоего массива, т.е. количество его элементов.
С двумерными аналогично:
var ttt : array of array of integer/string/byte etc.
begin
SetLength(ttt, Width, Height); вот и все.
← →
Anatoly Podgoretsky © (2006-03-23 16:31) [4]Не все, еще нужен тип.
← →
tesseract © (2006-03-24 09:16) [5]попробуй openarrays - они представляют собой динамические массивы типа variant.
function test(value:array of const):bolean;
← →
Leonid Troyanovsky © (2006-03-24 09:29) [6]
> tesseract © (24.03.06 09:16) [5]
> массивы типа variant.
Не типа variant, а типа TVarRec.
Просто, название такое - variant open array parameters.
--
Regards, LVT.
← →
tesseract © (2006-03-24 12:17) [7]
> Не типа variant, а типа TVarRec.
Да есть такое.
← →
Старик (2006-03-24 13:16) [8]Anatoly Podgoretsky: Не все, еще нужен тип
Ну, это понятно, и, к тому же, было указано выше :)
Я просто привел пример на фразу "А хотелось бы разных" (C).
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2006.04.30;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.011 c