Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.07.15;
Скачать: CL | DM;

Вниз

Как работать с динамическими массивами в TurboPascal?   Найти похожие ветки 

 
sergeyst ©   (2007-06-20 09:35) [0]

Привет. По сабжу. Заранее благодарен.
ЗЫ. А какой там Random?


 
Игорь Шевченко ©   (2007-06-20 09:36) [1]

Никак


 
MBo ©   (2007-06-20 09:36) [2]

объявлять тип указателя на массив и выделять память вручную.

>А какой там Random?
В справке описано


 
Dib@zol   (2007-06-20 09:39) [3]

Точно не уверен, но по-моему никак. Динамические массивы, как утверждает тов. Фаронов, были введены только в D4. Так что просто бери максимальное значение, к-рое может принять длина массива, и фсё ок.


> ЗЫ. А какой там Random?


Рандом там, надо полагать, обычный ;)


 
SpellCaster   (2007-06-20 10:59) [4]


type TMegaArray = array [0..$FFFFFFF] of TSomeStuff;
    PMegaArray = ^TMegaArray;

...

var arr: PMegaArray;

GetMem(arr, sizeof(TSomeStuff)*200);
...
arr^[3]:=...


 
DrPass ©   (2007-06-20 11:08) [5]


> type TMegaArray = array [0..$FFFFFFF] of TSomeStuff;

Это ты в 64-килобайтном сегменте собрался выделять? Ню-ню...


 
clickmaker ©   (2007-06-20 12:04) [6]


> А какой там Random?

случайный?


 
Германн ©   (2007-06-20 12:06) [7]

Turbo Professional умел такое:
unit TpEarray;
 {-Dynamically allocated arrays larger than 64K in Expanded memory}


 
icWasya ©   (2007-06-20 14:30) [8]

В принципе можно использовать описание и такое
type TMegaArray = array [0..0] of TSomeStuff;
   PMegaArray = ^TMegaArray;

и выключить проверку диапазона {$R-} - всё равно не работает


 
SpellCaster   (2007-06-20 17:49) [9]

> [5] DrPass ©   (20.06.07 11:08)
>
> > type TMegaArray = array [0..$FFFFFFF] of TSomeStuff;
>
> Это ты в 64-килобайтном сегменте собрался выделять? Ню-ню...

А никто не говорит, что будет выделяться максимум. Это же фейк, простое описание типа.


 
Anatoly Podgoretsky ©   (2007-06-20 18:58) [10]

> SpellCaster  (20.06.2007 17:49:09)  [9]

Этот фейк еще на стадии компиляции должен дать по зубам.


 
SpellCaster   (2007-06-21 11:21) [11]

> [10] Anatoly Podgoretsky ©   (20.06.07 18:58)

Ну, может быть. Дельфа ругается, только когда предполагаемый размер будет больше 2 гиг. Про ТП не знаю. Однако ничего не мешает написать класс, который будет выозвращать или присваивать элемент массива путем манипуляций с указателями, тогда и объявлять этот тип будет не нужно.


 
DrPass ©   (2007-06-21 12:04) [12]


>  Однако ничего не мешает написать класс, который будет выозвращать
> или присваивать элемент массива путем манипуляций с указателями,
>  тогда и объявлять этот тип будет не нужно

Мешает. Т.к. в ТР нет ни классов, ни свойств


 
Anatoly Podgoretsky ©   (2007-06-21 12:08) [13]

> SpellCaster  (21.06.2007 11:21:11)  [11]

А причем тут Лужков?


 
homm ©   (2007-06-21 12:18) [14]

> [13] Anatoly Podgoretsky ©   (21.06.07 12:08)
> > SpellCaster  (21.06.2007 11:21:11)  [11]
>
> А причем тут Лужков?

Анатолий, а при чем тут Лужков?


 
Anatoly Podgoretsky ©   (2007-06-21 13:14) [15]

> homm  (21.06.2007 12:18:14)  [14]

Как и Дельфи - не причем


 
Плохиш ©   (2007-06-21 13:18) [16]


> DrPass ©   (21.06.07 12:04) [12]
>
> >  Однако ничего не мешает написать класс, который будет
> выозвращать
> > или присваивать элемент массива путем манипуляций с указателями,
>
> >  тогда и объявлять этот тип будет не нужно
>
> Мешает. Т.к. в ТР нет ни классов, ни свойств

Пусть пишет объект, они появились в TP5.5


 
Германн ©   (2007-06-21 14:27) [17]


> Пусть пишет объект, они появились в TP5.5
>

Имхо, объекты появились в ТР6.


 
Думкин ©   (2007-06-21 14:31) [18]

> Германн ©   (21.06.07 14:27) [17]

5.5 :)


 
Думкин ©   (2007-06-21 14:33) [19]

http://ru.wikipedia.org/wiki/Turbo_Pascal

В течение нескольких лет, Borland улучшал не только среду разработки, но и язык. С версии 5.5 в него были введены передовые возможности объектно-ориентированного программирования.


 
iXT ©   (2007-06-21 14:40) [20]

> ЗЫ. А какой там Random?

Равномерный :)


 
Anatoly Podgoretsky ©   (2007-06-21 15:12) [21]

> Германн  (21.06.2007 14:27:17)  [17]

Неправильное ИМНО


 
DrPass ©   (2007-06-21 15:13) [22]


> iXT ©   (21.06.07 14:40) [20]
> > ЗЫ. А какой там Random?
>
> Равномерный :)

Не очень :)


 
Германн ©   (2007-06-21 16:29) [23]


> Anatoly Podgoretsky ©   (21.06.07 15:12) [21]
>
> > Германн  (21.06.2007 14:27:17)  [17]
>
> Неправильное ИМНО
>

Склероз, блин.


 
SpellCaster   (2007-06-22 11:05) [24]

> Мешает. Т.к. в ТР нет ни классов, ни свойств

То, что класс в ТП называется "Объектом", еще не превращает его в объект.


> А причем тут Лужков?

При том, что ТП под руками не было, проверил на Дельфе.


 
Инс   (2007-06-22 11:10) [25]


> То, что класс в ТП называется "Объектом", еще не превращает
> его в объект.


Между классом и объектом есть принципиальная разница. Если первый живет в куче, то второй - в стеке.


 
Ega23 ©   (2007-06-22 11:23) [26]


> Между классом и объектом есть принципиальная разница. Если
> первый живет в куче, то второй - в стеке.


Класс - это всего лишь описатель. А объект - это суть экземпляр конкретного класса. Объект без класса существовать не может. А вот класс без объекта - запросто.



Страницы: 1 вся ветка

Текущий архив: 2007.07.15;
Скачать: CL | DM;

Наверх




Память: 0.53 MB
Время: 0.015 c
4-1170871502
Efir
2007-02-07 21:05
2007.07.15
Отловить клик мыши на форме


15-1181976201
Мфлютка Бесс
2007-06-16 10:43
2007.07.15
инженерный калькулятор


2-1182516156
wezzz
2007-06-22 16:42
2007.07.15
Как получить имя каталога из имени файла?


2-1181998370
Angelka
2007-06-16 16:52
2007.07.15
Memo


1-1179242372
Calibr
2007-05-15 19:19
2007.07.15
Текстовый курсор в Edit