Bonjour
Je trouve un comportement bizarre à la méthode Size() de TBits.
Je suis en 2.4.0. en linux 64 avec lazarus.
exemple :
ce code renvoie : 1, 2, 3, 3, 4 alors qu'il devrait renvoyer 1, 2, 3 4, 5...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 procedure TForm1.Button1Click(Sender: TObject); var x:TBits; begin x:=TBits.Create(); x[0] := true; showmessage(inttostr( x.size)); x[1] := false; showmessage(inttostr( x.size)); x[2] := false; showmessage(inttostr( x.size)); x[3] := true; showmessage(inttostr( x.size)); x[4] := true; showmessage(inttostr( x.size)); end;
J'ai récupéré le code de TBits.inc et j'ai fait avec une unité et une classe
TMyBits. Avec TMybits, le même exemple renvoie cette fois 1, 2, 3, 4, 5.
J'avoue ne pas très bien comprendre ce qui se passe...
Une idée ?
merci
Julien
Partager