Форум: "Основная";
Текущий архив: 2006.09.17;
Скачать: [xml.tar.bz2];
ВнизSet of 0.255 Найти похожие ветки
← →
flaxe © (2006-08-05 16:12) [0]Вопрос такой: set может иметь максимум 256 значений, что можно использовать взамен, чтобы количество значений было больше(Мне нужно 900), но тип set оставался?
← →
Anatoly Podgoretsky © (2006-08-05 16:16) [1]Множества ограничены 256 элементами, расширить это нельзя, только самому реализовать свои множества. Наиболее близкое TBits
← →
Rial © (2006-08-05 16:19) [2]Взамен можно использовать свой Set. ))
(A in B) = ((B and A) = A);
(A + B) = (A or B);
(A - B) = (A xor B);
Причем тогда в Byte влезет 8 значений.
Что делать с бо"льшими числами - следует подумать.
Можно использовать
Array of Cardinal нужного размера.
← →
flaxe © (2006-08-05 20:17) [3]мда....
← →
RzCoDer © (2006-08-05 21:02) [4]гг) что то знакомое
смотреть тут http://forum.mirgames.ru/index.php?s=&showtopic=1604&view=findpost&p=20558
собсна со 108 сообщения и далее до публикации ответов
← →
Суслик © (2006-08-06 01:06) [5]да забей ты на set, напиши свой класс - все понятнее семантика будет
← →
Германн © (2006-08-06 01:27) [6]
> Суслик © (06.08.06 01:06) [5]
>
> да забей ты на set, напиши свой класс - все понятнее семантика
> будет
>
Не надо таких советов! Не хочу с тобой ссориться! :-)
← →
Суслик © (2006-08-06 01:54) [7]почему не надо?
многие конфетки от дельфи обарачиваются не всегда адекватной семантикой.
если тебе надо 900 вариатов множества, то вполне можно обойтись своим классом, семантика коего тебе ясна от и до. не да - не понятно, с контролем времени жизни этого класса. ну сделай статический класс со статическими же методами для обработки сета.
← →
Суслик © (2006-08-06 01:56) [8]2автору
А зачем тебе, чтобы set оставался?
Конструкцию "in" использвоать? Так ее методом можно заменить.
Или "+" в множество делать? Так это можно delphi2006 начать использовать и перегрузить операторы (там, правда, тоже глюков достаточно, но перегрузка в своей базе вроде работает неплохо).
В чем еще достоинства set"ов?
← →
Германн © (2006-08-06 02:13) [9]
> Суслик © (06.08.06 01:54) [7]
>
> почему не надо?
> многие конфетки от дельфи обарачиваются не всегда адекватной
> семантикой.
> если тебе надо 900 вариатов множества, то вполне можно обойтись
> своим классом, семантика коего тебе ясна от и до. не да
> - не понятно, с контролем времени жизни этого класса. ну
> сделай статический класс со статическими же методами для
> обработки сета.
>
Я сделал именно это. Но у меня не было другог выхода! (Д4)
Но я при этом не "забил" на set.
← →
StriderMan © (2006-08-07 15:46) [10]а можно поинтересоваться зачем такой длинный SET?
← →
evvcom © (2006-08-07 16:58) [11]> [10] StriderMan © (07.08.06 15:46)
Чтобы жизнь медом не казалась :)
← →
jack128 © (2006-08-07 17:21) [12]Суслик © (06.08.06 1:56) [8]
Так это можно delphi2006 начать использовать и перегрузить операторы (там, правда, тоже глюков достаточно, но перегрузка в своей базе вроде работает неплохо).
"глюков достаточно" - это слабо сказано. advanced records нормально работают, только при использовании временных переменых
var
TempRec: TMyRecord;
begin
TempRec := SameObj.FunctionReturnsRecord();
TempRec.SameMethodOrCalculateProp...
end;
не дай бог что нить сложнее - internal error. Тоже касается рекорд хелперов. Грусно, если чесно на это смотреть.. :-(
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2006.09.17;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.084 c