meni ovo nije radilo...
mislim da sam otkrio sta je...
evo ovako...
x files, kao prvo, cini mi se da si malo pogrijesio u onome kodu...
o funkciji AnsiReplaceStr pise da se stavlja tekst, i kazes koji string u tom tekstu da zamijenis sa kojim stringom, prema tome, ne bih rekao da je trebalo staviti
AnsiReplaceStr( R1->Lines->Strings[I], "\r", "" );
vec
AnsiReplaceStr( R1->Text, "\r", "" ); , znaci ne jedno slovo vec cirav tekst ??
pa prema tome ne bi trebala ni ona
for petlja...
sama funkcija predje preko teksta....
e, onda...nije trebalo ni ono
if ( R1->Lines->Count != R2->Lines->Count )
return ( false );
jer npr.
elite sec u ri
ty
i
elitesecurity
su po ovome kodu jednaki tekstovi, a ti im onim kodom nisi dozvolio da budu....
prepravljen kod sada izgleda ovako:
bool __fastcall TForm1::IsRichEditEqualWithoutSpaces(TRichEdit *R1, TRichEdit *R2)
{
AnsiString A1,A2;
AnsiString B1,B2; //trenutno ne trazim optimizaciju vec samo da proradi, kasnije treba optimizovati...
A1 = AnsiReplaceStr( R1->Text, " " , "" );
A2 = AnsiReplaceStr( R2->Text, " " , "" );
B1 = AnsiReplaceStr( A1, "\r" , "" );
B2 = AnsiReplaceStr( A2, "\r" , "" );
A1 = AnsiReplaceStr( B1, "\n" , "" );
A2 = AnsiReplaceStr( B2, "\n" , "" );
if ( A1 != A2 )
return ( false );
else
return ( true );
}
sada ukucah par raznih mogucnosti i radilo je fino...
e sada...moguce da i ja nesto grijesim...???
dart_vejder, pokusaj, pa javi je li to to...
e, samo da i ja nesto pitam u vezi ovoga...
treba li , tj. da li je pozeljno, nakon sto je odradjena radnja koja je odradjena,da "otpustimo" memoriju zauzetu stringovima A1, A2, B1 i B2, jer... mozda bi program trebao jos nesto odraditi pa se ponovo vratiti na istu radnju za neke druge stringove, pa da bezveze ne "drzimo" memoriju (pod uslovom da nam ovi stringovi vise ne trebaju)???
[Ovu poruku je menjao fucking voodoo dana 06.09.2005. u 14:25 GMT+1]
[Ovu poruku je menjao fucking voodoo dana 06.09.2005. u 14:27 GMT+1]
there's something out there
waiting for us,
and it ain't no man...