Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.04.2009, 16:41   #1
kurdt
Новичок
Джуниор
 
Регистрация: 26.04.2009
Сообщений: 2
По умолчанию Передача динамического массива как параметр ф-ции

Здравствуйте, сам с Delphi плохо разбираюсь, все-таки другие языки мне ближе. Делаю для знакомой задачу и наткнулся на вопрос, который не могу одолеть.
Есть класс, свойством которого является массив неопределенной длинны, скажем
myArray : array of integer;

при попытке сделать для него геттер и сеттер возникает ошибка.
[Error] Incompatible types: 'Array' and 'dynamic array'

Методы определяю так:
procedure TMyClass.setMyArray( value : array of integer ); begin
myArray := value;
end;
function TMyClass.getMyArray(): array of integer; begin
result := myArray;
end;


Понимаю, что делаю что-то не так, но сообразить как передавать такие массивы не могу. Подскажите как это можно сделать.
Спасибо за умные ответы.
kurdt вне форума Ответить с цитированием
Старый 26.04.2009, 17:24   #2
Sergey2
Форумчанин
 
Регистрация: 08.01.2008
Сообщений: 233
По умолчанию

Передавай указатель на массив. Во втором случаи тоже лучше передавать указатель, куда в функции будет прицеплен массив, так как возвращать указатель на объект/переменную созданную в фукнции, мягко говоря, дурной тон.
Sergey2 вне форума Ответить с цитированием
Старый 26.04.2009, 17:35   #3
kurdt
Новичок
Джуниор
 
Регистрация: 26.04.2009
Сообщений: 2
По умолчанию

Вопрос решен.
Создал новый тип в который впихнул этот массив. Сам-то тип конечно передается по ссылке, а не по значению, что и лечит проблему.
Долго не мог сообразить, потому что сам давным-давно пишу на Java и о передаче массивов по значению и думать забыл ))
kurdt вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Удаление динамического массива Сергей089 Общие вопросы C/C++ 3 08.03.2009 13:13
Напомните как задать размер динамического массива Arassir Помощь студентам 4 08.03.2009 13:02
символьные данные сложной структуры и имя массива как параметр функции EkaterinaA Помощь студентам 3 22.02.2009 21:36
Передача массива как ссылку в ф-цию IgorKr Общие вопросы C/C++ 1 30.03.2008 14:57