![]() |
AW: Problem mit Bearbeiten eines Objekts im Array . OOP
Ja , danke , dass du es endlich verstanden hast :D
Wir müssen ein Array nehmen , aber das Problem ist , wie mache ich das jetzt ? Ich hab schon ein Array , aber wie füg ich da jetzt etwas hinzu ? PS: Danke nochmal , dass du dir Zeit genommen hast und die Frage beantwort hast. Bin halt noch ein Neuling , was OOP angeht :D Tut mir echt Leid.. |
AW: Problem mit Bearbeiten eines Objekts im Array . OOP
Zitat:
|
AW: Problem mit Bearbeiten eines Objekts im Array . OOP
Na ich hab doch zuerst ein Array erstellt , oder ?
Stimmt , da sind jetzt die ganzen "Klassen" etc drin , wie greife ich jetzt auf die zu ? Mit Arraynaname [index] geht das ja wohl schlecht , oder ? |
AW: Problem mit Bearbeiten eines Objekts im Array . OOP
Hast Du Dir schon mal die Hilfe zum Array angesehen? F1-Taste.
Dann musst Du unterscheiden und entscheiden, ob Du ein statisches Array nutzen kannst (z.B. genau 50 Einträge) oder ein dynamisches, bei dem die Anzahl erst während der Laufzeit festgelegt wird und auch jederzeit geändert werden kann. Letzteres ist etwas aufwendiger. Steht aber alles in der Hilfe. |
AW: Problem mit Bearbeiten eines Objekts im Array . OOP
Nein , ich will die Einträge festellen , soll nicht zur Laufzeit entschieden werden.
In der Hilfe steht aber leider nix von Array in Bezug auf OOP. |
AW: Problem mit Bearbeiten eines Objekts im Array . OOP
Das hat auch wenig mit OOP zu tun. Du speicherst einfach irgendwas in einem Array (kannst Du quasi als Tabelle ansehen), in dem Fall halt irgendwelche Objekte.
Das Array könnte aber auch Integer oder Strings speichern. Ist also nix OOP. Du machst also Schubfächer auf, packst dort etwas rein und kannst es später wieder auslesen. Da spielt es keine Rolle, von welchem Typ die Inhalte sind. |
AW: Problem mit Bearbeiten eines Objekts im Array . OOP
Wie setze ich das aber jetzt um ? Könntest du mir bitte ein ganz kleines Beispiel zeigen , das mit diesem Problem ansatzweise zu tun hat ? Wäre echt nett.
|
AW: Problem mit Bearbeiten eines Objekts im Array . OOP
Suche Dir einfach ein Beispiel, das z.B.
Delphi-Quellcode:
o.ä. nutzt und ändere das in
Array [1..100] of Integer
Delphi-Quellcode:
.
Array [1..100] of TGeo_Objects
Alles weitere würde dann analog funktionieren. |
AW: Problem mit Bearbeiten eines Objekts im Array . OOP
@hotkey
Wenn du dir und uns einen Gefallen tun möchtest, dann lass den Begriff OOP einfach mal weg, da es einfach nur verwirrt, denn deine Fragen hatten bislang - bis auf gefühlt eine - soviel mit OOP zu schaffen, wie eine Banane mit einem Kuchenblech. Somit bekommst du auch irgendwie immer zunächst die falschen Antworten, weil du mit dem Begriff OOP erst mal alle in die falsche Richtung blicken lässt. So und nun mal ein Beispiel-Code für ein statisches Array für Objekt-Instanzen:
Delphi-Quellcode:
type
TFoo = class procedure DoSomething; end; procedure UseTheArray; var ObjArr : array[1..10] of TFoo; idx : integer; begin // Create the Objects for idx := 1 to 10 do ObjArr[ idx ] := TFoo.Create; // Use the Objects for idx := 1 to 10 do ObjArr[ idx ].DoSomething; // Free the Objects for idx := 1 to 10 do ObjArr[ idx ].Free; end; |
AW: Problem mit Bearbeiten eines Objekts im Array . OOP
Dazu noch ein kleiner Tipp am Rande: gewöhn Dir am besten gleich an, Arrays immer von Low() bis High() zu durchlaufen, dann bleibst Du garantiert innerhalb der Array-Grenzen und liest nicht davor oder dahinter, was ganz hässliche Fehler nach sich ziehen würde. Auch dazu ein Beispiel:
Delphi-Quellcode:
procedure TFormTest.ButtonTestClick(Sender: TObject);
var Arr: array[1..5] of integer; i: integer; begin for i := Low(Arr) to High(Arr) do Arr[i] := i * 2; for i := Low(Arr) to High(Arr) do ShowMessage(Format('Wert an Index %d: %d', [i, Arr[i]])); end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:41 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz