integer na TBits

Odpowiedz Nowy wątek
2006-09-17 14:15
snw
0

hejjj, pytanieee:

czy jest jakiś prosty sposób rzutowania typów liczbowych całkowitych na TBits ?

jako tablicą flag do tej pory posługiwałem się zmienną int64 ale boję się że kiedyś może zabraknąć w niej miejsca, stąd nowy pomysł z TBits...


Pozostało 580 znaków

2006-09-17 14:59
0

Raczej nie. TBits jest tylko klasą ładnie obudowującą tablicę boolean'ów, a jak powszechnie wiadomo boolean zajmuje bajt w pamięci. Może taka procedura (pisane z głowy):

procedure AddToTBits(bits: TBits; n: integer; start: integer = 0);
var i,size: integer;
begin
if bits=nil then Exit;
size:=sizeof(integer);
if bits.size < start+size then
    bits.size:=2*bits.size-start-size;
for i:=0 to size-1 do
    begin
    bits.Bits[start+i]:=boolean((n shr (size-i)) and 1);
    end;
end;

Nowe pomysły są inną kombinacją starych elementów. Nie ma nowych elementów. Są tylko nowe kombinacje.

Pozostało 580 znaków

2006-09-17 17:18
snw
0

dzięki ! ale narazie nie sprawdzę bo sprawa już jest w kolejce !

(w końcu się coś u mnie dzieje no nie ? :P)


Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0