AGB  ·  Datenschutz  ·  Impressum  







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

Array auf 0 setzen

Ein Thema von Daniel B · begonnen am 18. Nov 2002 · letzter Beitrag vom 18. Nov 2002
Antwort Antwort
Daniel B
(Gast)

n/a Beiträge
 
#1

Array auf 0 setzen

  Alt 18. Nov 2002, 21:46
Hallöchen,

mit SetLength kann man ja die Länge des Arrays auf 0 setzen.
Warum geht es hiermit nicht?

Delphi-Quellcode:
  TKWLok = Array [1..18] of String[5];

  TMenue = Record
    KWLok: TKWLok;
  end;
SetLength(KWLok, 0); Mit den Dynamischen kriege ich es hin, aber mit dem nicht.
Die Meldung: [Fehler] Main.pas(3329): Inkompatible Typen
Ich kann damit im mom. nichts anfangen.
Vielen Dank.

Grüsse, Daniel
  Mit Zitat antworten Zitat
Chewie

Registriert seit: 10. Jun 2002
Ort: Deidesheim
2.886 Beiträge
 
Turbo Delphi für Win32
 
#2
  Alt 18. Nov 2002, 21:51
Die Länge eines statischen Arrays ist ja konstant, also nicht zur Laufzeit änderbar. Deshalb funktioniert dein Code nicht.
Alle Einträge auf 0 setzen kannst du aber hiermit:
Code:
ZeroMemory(@KWLok,Length(KWLok);
Martin Leim
Egal wie dumm man selbst ist, es gibt immer andere, die noch dümmer sind
  Mit Zitat antworten Zitat
Daniel B
(Gast)

n/a Beiträge
 
#3
  Alt 18. Nov 2002, 21:55
Aah, jetzt gehts, Danke Dir.

Das es zur RunTime nicht geht war mir jetzt neu.

Grüsse, Daniel
  Mit Zitat antworten Zitat
Chewie

Registriert seit: 10. Jun 2002
Ort: Deidesheim
2.886 Beiträge
 
Turbo Delphi für Win32
 
#4
  Alt 18. Nov 2002, 22:15
Zitat von Daniel B:
Das es zur RunTime nicht geht war mir jetzt neu.
Soweit ich weiß kann man (außer vielleicht über fiese Tricks) Konstanten zur Laufzeit nicht ändern. Und Grenzen von statischen Arrays sind Konstanten. So gesehen ist es logisch, dass es nicht geht.
Martin Leim
Egal wie dumm man selbst ist, es gibt immer andere, die noch dümmer sind
  Mit Zitat antworten Zitat
Daniel B
(Gast)

n/a Beiträge
 
#5
  Alt 18. Nov 2002, 22:24
Zitat von Chewie:
Und Grenzen von statischen Arrays sind Konstanten. So gesehen ist es logisch, dass es nicht geht.
Klingt einleuchtend. Muss man aber auch erstmal wissen das man es so sehen muss.

Grüsse, Daniel
  Mit Zitat antworten Zitat
Antwort Antwort


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 08:28 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