Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.07.15;
Скачать: [xml.tar.bz2];

Вниз

Как работать с динамическими массивами в 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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.5 MB
Время: 0.036 c
1-1178974026
Ламонов Олег
2007-05-12 16:47
2007.07.15
ListView


15-1181882123
Novice
2007-06-15 08:35
2007.07.15
Программирование для КПК (Windows Mobile Edition)


2-1182517334
harisma
2007-06-22 17:02
2007.07.15
В чем разница?


3-1176425102
Sharoykin
2007-04-13 04:45
2007.07.15
Групповое изменение данных


15-1182220216
Slider007
2007-06-19 06:30
2007.07.15
С днем рождения ! 18 июня 2007 понедельник





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский