![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы
![]() |
Поиск в этой теме
![]() |
![]() |
#11 |
Старожил
Регистрация: 13.12.2006
Сообщений: 3,859
|
![]()
как же вы массиву присваиваете значение элемента
ICQ не для вопросов, а для предложений. Для вопросов используйте форум
IRC канал клуба программистов|Мои статьи |
![]() |
![]() |
![]() |
#12 |
Форумчанин
Регистрация: 30.03.2007
Сообщений: 124
|
![]()
согласен, но динамический массив по структуре похож на тип PChar (если я не ошибаюсь), где указатель на тип, совпадает с указателем на первый элемент.
и второе: что мне делать если по другому не получаеться ![]() Спасибо не нужно, а на весы слева кликнуть не помешает!!! |
![]() |
![]() |
![]() |
#13 |
Heavy metal
Пользователь
Регистрация: 02.04.2007
Сообщений: 42
|
![]()
Кажется понял. У тебя наверное тип массива объявлен в обоих модулях отдельно. Поэтому компилятор считает что они несовместимы, даже если они объявлены одинаково.
Вот так: Код:
Код:
|
![]() |
![]() |
![]() |
#14 |
Форумчанин
Регистрация: 30.03.2007
Сообщений: 124
|
![]()
Unit 1;
type onedat=record id,All,last,min,ends:integer; f:boolean; str:TStrings; end; ...... game:array of onedat; Unit 2; ..... procedure TForm.Button4Click(Sender: TObject); fix:array of onedat; .... Вроди бы все нормально, тип onedat обьявлен только в Unit1, а в чем проблема я не пойму. Но работать я ее заставил game:=fix;-так не проходит game:=@fix[0]; - так работает нормально кому интерестно в чем была проблема: некоторые записи в fix присваивались с game в том числе и str:tstrings а некоторые создавались новые затем масив память массива game полностю очищалась и game:=@fix[0]; ошибка возникала потому что str:tstrings тоже удалялись и оставались лишь указатели на них. ![]() Спасибо не нужно, а на весы слева кликнуть не помешает!!! |
![]() |
![]() |
![]() |
#15 |
Heavy metal
Пользователь
Регистрация: 02.04.2007
Сообщений: 42
|
![]()
С onedat - всё верно. Но надо ещё массив этих onedat-ов объявить как тип. Тогда всё будет пучком. Выкинь к чертям своё "game:=@fix[0];" и сделай так:
Код:
Код:
|
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Pascal масивы | Devikss | Помощь студентам | 2 | 19.06.2008 17:20 |
динамические строки | SeregaPIF | Общие вопросы C/C++ | 1 | 19.11.2007 08:20 |
Динамические объекты | 095 | Общие вопросы Delphi | 1 | 04.10.2007 21:16 |