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

Вниз

Перечисления   Найти похожие ветки 

 
x-man   (2008-05-03 16:14) [0]

Привет! Можно ли создавать перечисления динамически, как? Спасибо.


 
Palladin ©   (2008-05-03 16:22) [1]

на кой?


 
palva ©   (2008-05-03 19:33) [2]

Выделите память под перечисление - вот и получится указатель на неициализированное перечисление. Присвойте ему сначала значение, потом используйте как хотите. В конце работы освободите память.


 
x-man   (2008-05-05 11:23) [3]


> на кой?

удобней совпадения искать

> Выделите память под перечисление

как? где можно почитать?


 
Palladin ©   (2008-05-05 11:30) [4]


> удобней совпадения искать

кккакие совпадения? при чем тут перечисления?


 
Amoeba ©   (2008-05-05 11:32) [5]


> x-man   (03.05.08 16:14)
>
> Привет! Можно ли создавать перечисления динамически, как?
>  Спасибо.
>

Что собственно понимается уважаемым автором вопроса под перечислением?


 
palva ©   (2008-05-05 11:46) [6]

> как? где можно почитать?
Например, так:

{$APPTYPE CONSOLE}
type TMyEnum=(qwe, rty, uio);
var p :^TMyEnum;
begin
 New(p);
 p^ := rty;
 WriteLn(Ord(p^)); // 1
 Dispose(p);
end.

Читать в учебнике.


 
Palladin ©   (2008-05-05 11:51) [7]


> palva ©   (05.05.08 11:46) [6]

а зачем динамически то создавать?


 
Anatoly Podgoretsky ©   (2008-05-05 12:05) [8]

> Amoeba  (05.05.2008 11:32:05)  [5]

Может мы никогда не узнаем, очень он искустно молчит об этом.


 
x-man   (2008-05-05 23:38) [9]

под перечислением я понимаю это -- type TMyEnum=(qwe, rty, uio);
динамически, так как хочу грузить из файла, т.е. перечисление можно менять, а делаю я за тем, т.к. на мой взгляд искать проще с перечислениями, а еще точнее это будут разделители, я буду разбивать строку одним условием ...


 
DVM ©   (2008-05-05 23:44) [10]

Какое все таки бывает нестандартное мышление у некоторых!


 
x-man   (2008-05-05 23:54) [11]


> Какое все таки бывает нестандартное мышление у некоторых!

поясни


 
DVM ©   (2008-05-05 23:59) [12]


> поясни

Перечисления (перечислимый тип) по своей сути - это нечто имеющее конечное число элементов. Оно не может быть "резиновым".


 
DVM ©   (2008-05-06 00:01) [13]

Почему бы не взять список? И искать в нем удобно и сохранять на диск/читать с диска.


 
x-man   (2008-05-06 00:07) [14]

TStringList?


 
DVM ©   (2008-05-06 00:10) [15]


> TStringList?

Можно и его. Можно свой класс сделать или TStringList адаптировать, если чем-то не устроит.


 
x-man   (2008-05-06 00:40) [16]

спасибо


 
Германн ©   (2008-05-06 00:54) [17]


> , а еще точнее это будут разделители, я буду разбивать строку
> одним условием

Ну, реальных разделителей содержимого строки не так уж и много. Перечислимый тип для них легко создать статически. Как и тип множество содержащий элементы этого перечислимого типа. А так же и переменную типа этого множества. А вот уж заполнить эту последнюю при чтении из файла - как два пальца об асфальт.


 
x-man   (2008-05-06 12:21) [18]


> А вот уж заполнить эту последнюю при чтении из файла - как
> два пальца об асфальт.

как?


 
Германн ©   (2008-05-06 14:28) [19]


> x-man   (06.05.08 12:21) [18]
>
>
> > А вот уж заполнить эту последнюю при чтении из файла -
>  как
> > два пальца об асфальт.
>
> как?
>

Смотря какую структуру имеет этот файл.


 
x-man   (2008-05-06 16:03) [20]

скажем это текстовый файл, в каждой строке разделитель, всего их 5-7


 
Сергей М. ©   (2008-05-06 16:08) [21]

Это


> хочу грузить из файла, т.е. перечисление можно менять


никак не вяжется с


> type TMyEnum=(qwe, rty, uio);


Определение перечислимого типа данных (как и любого другого типа) имеет отношение ко времени компиляции, а не ко времени выполнения.


 
Anatoly Podgoretsky ©   (2008-05-06 16:26) [22]

> Сергей М.  (06.05.2008 16:08:21)  [21]

И оно нафиг не нужно, перечисление само по себе, в отрыве от его использования, ну например в case и так далее.
У автора вероятно серьезное сексуальное растройство, хочет потрахаться.


 
Германн ©   (2008-05-06 16:31) [23]


> x-man   (06.05.08 16:03) [20]
>
> скажем это текстовый файл, в каждой строке разделитель,
> всего их 5-7
>


var
 Separators : set of char;
 Ch : Char;
 F : TextFile;

 Separators:=[];
 AssignFile(F,FileName.txt);
 Reset(F);
 While not EOF(F) do begin
   Readln(F,Ch);
   Include(Separators, Ch);
 end;
 CloseFile(F);


Например так.


 
x-man   (2008-05-06 18:11) [24]

то, что надо! Германн - спасибо!


 
Сергей М,   (2008-05-06 19:02) [25]


> x-man   (06.05.08 18:11) [24]


> то, что надо


Ну и где в этом "точтонаде" т.н. "перечисления" ?

Ты, чебурек, множества от перечислений, видать, не отличаешь)


 
app ©   (2008-05-06 20:15) [26]

> Сергей М,  (06.05.2008 19:02:25)  [25]

Выбирай выражения.


 
app ©   (2008-05-06 20:15) [27]

Удалено модератором
Примечание: Дубль, Почта Виндоус имеет ошибку


 
Сергей М,   (2008-05-06 20:19) [28]

АП, "чебурек" - не самое невыбираемое, что можно придумать)

Впрочем, обязуюсь "фильтровать базар".


 
Германн ©   (2008-05-06 21:26) [29]


> x-man   (06.05.08 18:11) [24]
>
> то, что надо! Германн - спасибо!
>

Если б сегодня не дали зарплату, хрен бы я телепировал, что за перечисления тебе нужны. Да ещё и примеры писал при этом.
:)))


 
Anatoly Podgoretsky ©   (2008-05-06 21:33) [30]

> Германн  (06.05.2008 21:26:29)  [29]

Вот он зверинный оскал капитализма.


 
x-man   (2008-05-07 00:33) [31]

я не знал про эти типы ...


 
Palladin ©   (2008-05-07 00:51) [32]

делфи раньше чем горшок (С)


 
Германн ©   (2008-05-07 00:59) [33]


> x-man   (07.05.08 00:33) [31]
>
> я не знал про эти типы ...
>

И это плохо. Прежде чем лезть с вопросами на форум нужно хотя бы усвоить по книжкам основы. Я это называю азбукой. Без неё задавать вопросы на форуме - прямой путь нарваться на флуд. И учти, что модераторы, скорее всего, осудят не флуд, а тебя с твоим безграмотным вопросом! Даже в конференции "Начинающие". Бо должна же быть некая нижняя граница начинающих, которая > 0. Иначе форум захлестнёт ураган типа того, который вчера "накрыл" Мьянму. :)


 
Anatoly Podgoretsky ©   (2008-05-07 01:22) [34]

> Германн  (07.05.2008 00:59:33)  [33]

Эта граница называется, что у нас нет форума форума для идиотов, а есть только для начинающих, а то иногда с такими вопросами приходят и уровень грамотности на уровне второго класса. Некоторые темы по этой причине приходится закрывать. Ну а если при этом начинает огрызаться, ну тогда сам Бог велел, а против воли Бога не поспоришь.
Ураган Мьянму просто мелкий ветерок в некоторых случаях.
Ну что просветительной работы достаточно?


 
Германн ©   (2008-05-07 01:32) [35]


> Anatoly Podgoretsky ©   (07.05.08 01:22) [34]

Я думаю "просветительной" работы достаточно. По крайней мере в этой ветке.

P.S. Ну и по крайней мере, пока я не получу деньгу за халтурку, которая почти готова. Ну и по крайней мере, пока я не получу деньгу за халтурку, которая почти-почти готова.
Но это уже в других ветках.  :)



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

Форум: "Начинающим";
Текущий архив: 2008.06.01;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.52 MB
Время: 0.046 c
6-1188030200
foreverDelphi
2007-08-25 12:23
2008.06.01
TClientSocket, TServerSocket - вопросы по теории


15-1208289360
TIF
2008-04-15 23:56
2008.06.01
Быстрый поиск в ComboBox


2-1210054182
FreeElectron
2008-05-06 10:09
2008.06.01
TRichEdit, PlainText


15-1207899362
IGray
2008-04-11 11:36
2008.06.01
Что с TORRY.NET ?


2-1210499472
Nucer
2008-05-11 13:51
2008.06.01
GetMem и записи со строками





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский