Array wird nicht gefüllt??? Fehler gefunden aber noch keine Lösung
-
titanium schrieb:
Hi,
...Das Problem ist das ich die Grösse der Array wie hierint anzahl = SQLQuery1->RecordCount; stvar = new String[anzahl];
festlegen wollte aber das funktioniert nicht.
..
Habe das aus dem Netz.WAS funktioniert nicht? Gibts ne Exception?
Ausserdem ist das sehr schlechter Programmierstil, auf eine globale Variable (i) von zwei verschiedenen threads aus zuzugreifen ohne Critical Sections.
Das zeigt mir sehr eindrucksvoll, dass man auch Sachen aus dem Netz nicht einfach so ohne Nachdenken übernehmen sollte.
-
ehhh i aus zwei threads, wie kommst du da drauf ?
egal.
Noch einmal:stvar = new String[anzahl];
das funktioniert nicht.
Ich kann die Array grösse nicht festlegen, das macht er nicht obwohl die anzahl=75 oder 100 oder 1000 ist.
Die Frage ist warum macht er das nicht ?
Es gibt keine Fehlermeldung, es kommt auch zu kein Problem mit variablen usw.. nur die Array grösse kann ich nicht festlegen.DAnke.
-
Bist du dir sicher, dass anzahl die richtige Grösse hat? Hast du das im Debugger überprüft? Woher weißt du, dass das Array nicht die richtige Größe hat?
Evtl. stimmt nur was bei der Zuweisung nicht.
-
Hi,
überprüft habe ich das.
Bin die Zeilen alle Durch gegangen.
Habe überall Haltepunkte festgelegt werte anzeigen lassen, deswegen sage ich ja das er das nicht übernimmt.
Anzahl ist 75 oder 100 usw...
Aber die stvar gösse ändert sich nicht.
Liegt das vielleicht daran das ich in header String* stvar; definiere und in cpp stvar = new String[anzahl]; ?
-
Wie erkennst du denn ob sich die Größe von stvar ändert? Der Debugger zeigt das schließlich nicht an.
-
Hi,
dein Code sollte vom Prinzip laufen. Habe mal ein Schnipsel mit deinen
Startwerten aufgesetzt. Kannst ja mal vergleichen.void __fastcall TForm1::SpeedButton1Click(TObject *Sender) { int cnt = 50; String id_var2 = "test"; String *stvar; stvar = new String[cnt]; for (int i = 0; i< cnt ; i++) { stvar[i] = id_var2 + IntToStr(i); Memo1->Lines->Add(stvar[i]); } } //---------------------------------------------------------------------------
Vielleicht hilfts dir.
mfg
kpeter
-
LoL
die beiträge haben sich geschnitten ???
//=========================================kpeter ja habe das eingebaut Memo geht bis test49
array ist bei test0.
-
Hast du mein Posting gelesen? Vermutlich ist woanders dein Problem
-
Das besagt nichts. Der Debugger weiß überhaupt nicht wie groß das Array ist wenn du es dynamisch erzeugst. Ich denke mal dein Fehler steckt woanders.
-
LoL
die beiträge haben sich geschnitten.
//=========================================kpeter ja habe das eingebaut Memo geht bis test49
array ist bei test0.