AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Länge eines 2 dim. Arrays ändern?

Ein Thema von toyohj60 · begonnen am 18. Jan 2008 · letzter Beitrag vom 18. Jan 2008
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#11

Re: Länge eines 2 dim. Arrays ändern?

  Alt 18. Jan 2008, 13:38
Zitat von DeddyH:
Meine ich doch, dann ist Matzes Code sogar falsch, das müsste + 2 heißen
Oh stimmt. Kleiner Denkfehler.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.542 Beiträge
 
Delphi 11 Alexandria
 
#12

Re: Länge eines 2 dim. Arrays ändern?

  Alt 18. Jan 2008, 13:45
Passiert
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.152 Beiträge
 
Delphi 12 Athens
 
#13

Re: Länge eines 2 dim. Arrays ändern?

  Alt 18. Jan 2008, 13:48
ahh, ok, ich dacht schon das dort oben war der fehlerhafte Code und jupp, D7 hier zeigt im ToolTipp auch ur einen Parameter an.

Aber SetLength ist hier eh mehr Compiliermagig und wohl nicht so gut hilfemäßig ausgebaut
und in der D7-OH steht noch nichtmal was hier ._.

also zum Thema, entweder nochmals SetLength so wie vorher aufrufen und nur andere Dimensionen angeben,
oder die Dimensionen einzeln ändern
Delphi-Quellcode:
// alles
Setlength(RGArray, x, y);

// einzeln
Setlength(RGArray, x);

Setlength(RGArray[x], y);
Den Rest, wie man was von er aktuellen Größe auß hinzufügt wurde ja schon gesagt.


ich häng meistens so einen Eintrag an:
Delphi-Quellcode:
Var A: Array of irgendwas;

i := Length(A);
SetLength(A, i + 1);
A[i] := irgedwasneues;

oder auch 2...
i := Length(A);
SetLength(A, i + 2);
A[i] := irgedwasneues;
A[i + 1] := irgedwasneues;

PS:
Zitat von toyohj60:
danke mit Length(x) funktioniert das endlich!! Da schweigt die OH aber total, dass das mit High(x) nicht finktioniert
wieso schweigt?
High = Length-1 und das sagt auch die OH

High ruft bei dynamischen Arrays intern Length auf und zieht 1 ab.


und wenn man die Länger um 1 erhöhen will, dann muß man auch Lenght nehmen und um 1 erhöhen, oder High um 2

Length + 1 = High + 2 = (Length-1) + 2
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:26 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz