AGB  ·  Datenschutz  ·  Impressum  







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

Der neue und die Probleme...

Ein Thema von Carbrögen · begonnen am 25. Aug 2003 · letzter Beitrag vom 27. Aug 2003
Antwort Antwort
Seite 2 von 3     12 3      
Carbrögen

Registriert seit: 25. Aug 2003
57 Beiträge
 
Delphi 7 Enterprise
 
#11

Re: Der neue und die Probleme...

  Alt 26. Aug 2003, 13:01
Ahm wenn ich mit SetLenght() festlegen kann wie groß der Array ist ist er doch eigentlich nich mehr Dynamisch.... okay ich kann SetLength zur Laufzeit ändern aber wenn ics festleg isser Schwachsinnig oder!?


Mfg
  Mit Zitat antworten Zitat
Benutzerbild von S - tefano
S - tefano

Registriert seit: 16. Dez 2002
Ort: Dülmen
477 Beiträge
 
Delphi 2009 Professional
 
#12

Re: Der neue und die Probleme...

  Alt 26. Aug 2003, 14:11
Naja, wenn du einen dynamischen Array hast, musst du ihm ja irgendwie sagen können wieviele Elemente es haben soll...
Wenn du den Array einfach deklarierst und zur Laufzeit Elemente hinzufügst, bekommst du ne Exception.
Bevor du also Elemente hinzufügst musst du die größe des Arrays verstellen.
Deshalb ist es ja auch ein dynamischer Array. Du kannst ihn zur Laufzeit verlängern, aber auch verkürzen.
Mit SetLength legst du den Array ja nicht wirklich fest, du bestimmst nur seine Länge. Und die gilt so lange, bis du sie mit SetLength wieder änderst.

Bis dann,

S - tefano
"Sir, we are surrounded!" - "Excellent, we can attack in every direction!"
  Mit Zitat antworten Zitat
Helpliner

Registriert seit: 6. Aug 2003
Ort: Hamburg
84 Beiträge
 
Delphi 7 Personal
 
#13

Re: Der neue und die Probleme...

  Alt 26. Aug 2003, 14:15
Der Vorteil ist, das du zur Laufzeit auf Eingaben von extern oder auf Ergebnisse von Berechnungen reagieren, und das Array dann dynamisch anpassen kannst.
VORSICHT: blutiger Anfänger!

Ähnlichkeiten mit tatsächlich funktionierendem Code sind rein zufällig und definitiv unbeabsichtigt.
  Mit Zitat antworten Zitat
Alexander

Registriert seit: 28. Aug 2002
Ort: Oldenburg
3.513 Beiträge
 
Turbo Delphi für .NET
 
#14

Re: Der neue und die Probleme...

  Alt 26. Aug 2003, 14:18
Jupp stimmt.
Als ergänzung habe ich noch ein kleines Tutorial (allerdings nicht von mir ) parat:
http://www.delphi-forum.de/viewtopic.php?t=7204 (mal ein kleiner Verweis zum "Partner"forum)
Alexander
  Mit Zitat antworten Zitat
Carbrögen

Registriert seit: 25. Aug 2003
57 Beiträge
 
Delphi 7 Enterprise
 
#15

Re: Der neue und die Probleme...

  Alt 26. Aug 2003, 18:13
Aaaah Ok.

Das heist das ich sage: So du bist jetz ein zweidimensionales array (z.B. regal: array of array of string) und du kannst maximal 10 Elemente aufnehmen (SetLength(regal, 10)). Oder?



Ich Garantiere icht für die richtigkeit des Codes ich wollte es nur veranschaulichen
  Mit Zitat antworten Zitat
Alexander

Registriert seit: 28. Aug 2002
Ort: Oldenburg
3.513 Beiträge
 
Turbo Delphi für .NET
 
#16

Re: Der neue und die Probleme...

  Alt 26. Aug 2003, 19:23
Jupp. Stimmt so
Alexander
  Mit Zitat antworten Zitat
Carbrögen

Registriert seit: 25. Aug 2003
57 Beiträge
 
Delphi 7 Enterprise
 
#17

Re: Der neue und die Probleme...

  Alt 26. Aug 2003, 22:36
Ich sag ja:
Geht nicht - Gibts nicht


Und ich bin Happy das ich das jetz gerallt hab


Dank DP ...


Ahm ja gut also das hab ich Intus dann kann ich ja getrost ans Coden gehen


Danke =)


Wenn ich Probleme hab (wie im Andern Themenraum) komm ich zu euch 8)

Mfg Marc
  Mit Zitat antworten Zitat
Snoop007

Registriert seit: 15. Jan 2003
331 Beiträge
 
Delphi 6 Personal
 
#18

Re: Der neue und die Probleme...

  Alt 26. Aug 2003, 23:29
hi,
ich hab die beiträge alle mal kurz überflogen, ich gebs ja zu

was ist ein array ( wie kann man sich das vorstellen )

du weisst was variablen sind ?
einfach eine speicheradresse die vom typ string ( zeichenkette ) oder integer ( ganzezahlen ) oder sonstwas ist

eine varible deklarieren wir mit
Code:
var
  hallo : string;
wir haben eine variable vom typ string deklariert
nun können wir einen Wert der Variablen zuweisen bsp. "A1"
Code:
  begin
    hallo := 'A1';
  end;
was ist aber wenn wir mehrere werte speichern müssen, von denen wir die anzahl nicht kennen oder aber die einen einheitlichen namen verwenden sollen oder oder oder ... dann benutzen wir arrays
arrays sind quasie viele einzelne variablen
um ein dynamisches(sprich unbestimmte länge) array zu erzeugen geben wir dies an
Code:
var
  hallo : array of string;
nun müssen wir nur noch sagen, wie gross das dynamische array sein soll.
wir bereiten das array auf einen wert vor
Code:
begin
  SetLength(hallo,1);
end;
wir haben nun eine stelle im array "frei gestellt" ein array fängt immer bei 0 an zu zählen, also greifen wir mit
Code:
  hallo[0] := 'a';
auf den platz im array zu und weisen das zeichen a hinzu. genau wie bei variablen

statische arrays haben eine feste länge
Code:
var
  hallo : array[0..9] of string;
hier wurde ein array erzeugt, welches 10 felder hat der zugriff erfolgt wie bei einfachen variablen oder dynamischen arrays
Code:
  hallo[0] := 'a';
um die länge eines array rauszufinden, kannst du length() oder high() aufrufen, wobei length() auch bei mehr demensionalen array funktioniert.
achte darauf, wenn du length() verwendest und eine speicherstelle ansprechen willst, das ergebnis length() -1 zu nehem !
SetLength() benutzt du um die länge eines dynamischen array zu ändern, verbraucht viel speicher klingt komisch ist aber so

kurz zu mehr demensionalen arrays
Code:
var
  hallo : array[0..9] of array[0..9] of string;
wieviele demensionen hat hallo ?

2, weil jedes array of eine denemsion ist, gleiches gilt für dynamische arrays
Code:
var
  hallo : array of array of string;
ich hoffe, ich konnte helfen,

grüsse
  Mit Zitat antworten Zitat
Carbrögen

Registriert seit: 25. Aug 2003
57 Beiträge
 
Delphi 7 Enterprise
 
#19

Re: Der neue und die Probleme...

  Alt 27. Aug 2003, 09:59
Konntest du nur wurde mir schon geholfen danke
  Mit Zitat antworten Zitat
Benutzerbild von Taladan
Taladan

Registriert seit: 5. Aug 2003
Ort: Osnabrück
505 Beiträge
 
Delphi 2005 Professional
 
#20

Re: Der neue und die Probleme...

  Alt 27. Aug 2003, 10:39
@Carbrögen
Kleine berichtigung. Du hast ein zweidimensionales Array geschaffen

Array of Array of string //zwei dimensionen Du hast aber mit deiner SetLength(regal, 10) nur EINE Dimension festgelegt. Du mußt immer alle Dimensionen Festlegen. Also

SetLength(Regal, 10, 10) //für zwei dimensionen Ein zweidimensionales Array kannst du gut mit einen Güterbahnhof vergleichen. Ein Güterbahnhof (wo ja in der Regel in seiner Struktur identisch aufgebaut) hat einen Namen oder eine Bezeichnung, das ist der Name des Arrays. Dieser Güterbahnhof hat mehrere Bereiche (1 Dimension). Jede Bereich hat die selbe Anzahl an Stellplätzen (2 Dimension). Diese Stellpätze können durch die Cargoboxen auch aufeinander gestellt werden.(3 Dimension).

Wie gesagt, bei mehr Diemensionen wird es echt schwer das ganze Logisch darzustellen. Versuch immer, so wenig wie möglich Dimensionen zu verwenden. Ab drei wird es echt schwer.
Marco
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 3     12 3      


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 17:12 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