AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

statisches Array mit Konstanten

Ein Thema von Helmi · begonnen am 2. Mai 2010 · letzter Beitrag vom 2. Mai 2010
Antwort Antwort
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.304 Beiträge
 
Delphi XE2 Professional
 
#1

statisches Array mit Konstanten

  Alt 2. Mai 2010, 12:27
Hallo,

ich steh glaub ich gerade auf dem Schlauch:

Ich möchte ein statisches Array mit Konstanten beschreiben:

Delphi-Quellcode:
const
  test: array[0..4] of (const_Allgemein, const_Kanal, const_Achse, const_Antrieb, const_Setting);
Die "const_Allgemein" etc. sind Strings.

Nur leider bekomm ich bei dieser Schreibweise folgenden Fehler:
Zitat:
[Fehler] MainUnit.pas(292): '=' erwartet, aber ';' gefunden
Das Ganze unter "var" geschrieben:
Delphi-Quellcode:
var
  test: array[0..4] of (const_Allgemein, const_Kanal, const_Achse, const_Antrieb, const_Setting);
wird nicht angemeckert, dafür würd dann bei der Verwendung im Code von "const_Allgemein" (als auch bei den anderen)
der Fehler:
Zitat:
[Fehler] MainUnit.pas(307): Inkompatible Typen: 'String' und 'Enumeration'
gemeldet.

Kann mir jemand sagen, ob:
1. Das überhaupt geht? (also Konstanten in ein statisches Array)
2. Falls es geht, was ich falsch mache und wie es sein sollte
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
Benutzerbild von sx2008
sx2008

Registriert seit: 16. Feb 2008
Ort: Baden-Württemberg
2.332 Beiträge
 
Delphi 2007 Professional
 
#2

Re: statisches Array mit Konstanten

  Alt 2. Mai 2010, 12:37
Bei Pascal/Delphi gilt allgemein: immer erst die Datentypen deklarieren:
Delphi-Quellcode:
type
  TConfigItem = (const_Allgemein, const_Kanal, const_Achse, const_Antrieb, const_Setting);
  TConfigArray = array[TConfigItem] of string;
Dann darf man ein Konstantenarray definieren:
Delphi-Quellcode:
const
  test : TConfigArray = (
  'allg',
  'Kanal 2',
  'Achse 0',
  'motor',
  '50'
  );
ungetestet, da kein Delphi auf dem Rechner
  Mit Zitat antworten Zitat
Benutzerbild von lbccaleb
lbccaleb

Registriert seit: 25. Mai 2006
Ort: Rostock / Bremen
2.037 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: statisches Array mit Konstanten

  Alt 2. Mai 2010, 12:38
Warum nicht so??

Delphi-Quellcode:
 type
  Ttest = (const_Allgemein, const_Kanal, const_Achse, const_Antrieb, const_Setting);
Martin
MFG Caleb
TheSmallOne (MediaPlayer)
Die Dinge werden berechenbar, wenn man die Natur einer Sache durchschaut hat (Blade)
  Mit Zitat antworten Zitat
Flips

Registriert seit: 17. Feb 2005
Ort: Sankt Wendel
491 Beiträge
 
Delphi 7 Professional
 
#4

Re: statisches Array mit Konstanten

  Alt 2. Mai 2010, 12:41
Zitat von lbccaleb:
Warum nicht so??

Delphi-Quellcode:
 type
  Ttest = (const_Allgemein, const_Kanal, const_Achse, const_Antrieb, const_Setting);
Naja ich bin mir nichtmehr sicher (Delphi ist schon etwas her bei mir ), aber dabei handelt es sich doch um eine Enumeration und nicht um ein Array.
Philipp F.
  Mit Zitat antworten Zitat
alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#5

Re: statisches Array mit Konstanten

  Alt 2. Mai 2010, 12:43
Zitat von sx2008:
Bei Pascal/Delphi gilt allgemein: immer erst die Datentypen deklarieren:
...
Dann darf man ein Konstantenarray definieren:
...
Nö, Stimmt nicht.
Geht auch so:
Delphi-Quellcode:
Const
  test : Array [TConfigItem] Of String = ('A','B(* usw *) ,'Z');
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.304 Beiträge
 
Delphi XE2 Professional
 
#6

Re: statisches Array mit Konstanten

  Alt 2. Mai 2010, 13:39
Hallo,

Danke für die Antworten.

Ich glaube aber ich bin missverstanden worden (oder falsch ausgedrückt):

Ich hab die Konstanten "const_Allgemein", "const_Kanal", "const_Achse", "const_Antrieb", "const_Setting" mit Strings definiert.

Nun wollte ich diese Konstanten in einem Array zusammenfügen um über das Array mit einer Schleife zu laufen:
Delphi-Quellcode:
for i := low(const_array) to high(const_array) do
  begin
    S := const_array(i);

    { ... }

  end;
Wenn das ginge so könnt ich zwei Arrays in einer Schleife abfragen (also das Konstanten-Array und noch ein anderes Array)
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
Teekeks

Registriert seit: 19. Okt 2008
Ort: Dresden
765 Beiträge
 
FreePascal / Lazarus
 
#7

Re: statisches Array mit Konstanten

  Alt 2. Mai 2010, 13:52
Na dann so:
Delphi-Quellcode:
Const
  test : Array [0..4] Of String = (const_Allgemein, const_Kanal, const_Achse, const_Antrieb, const_Setting);
Das sollte so gehen...
Peter
"Div by zero Error" oder auch: "Es geht auch ohne Signatur!".
  Mit Zitat antworten Zitat
Benutzerbild von Helmi
Helmi

Registriert seit: 29. Dez 2003
Ort: Erding, Republik Bayern
3.304 Beiträge
 
Delphi XE2 Professional
 
#8

Re: statisches Array mit Konstanten

  Alt 2. Mai 2010, 14:02
Zitat von Teekeks:
Na dann so:
Delphi-Quellcode:
Const
  test : Array [0..4] Of String = (const_Allgemein, const_Kanal, const_Achse, const_Antrieb, const_Setting);
Das sollte so gehen...
Danke!
Das funktioniert!
Ich dachte ich hätte jede Kombination ausprobiert - nur diese nicht!
mfg
Helmi

>> Theorie ist Wissen, dass nicht funktioniert - Praxis ist, wenn alles funktioniert und keiner weiss warum! <<
  Mit Zitat antworten Zitat
Benutzerbild von Fussball-Robby
Fussball-Robby

Registriert seit: 22. Okt 2007
Ort: Nähe Köln
1.063 Beiträge
 
Delphi 7 Enterprise
 
#9

Re: statisches Array mit Konstanten

  Alt 2. Mai 2010, 14:05
Zur Vervollständigung, das ist ja auch die allgemeine Form
Delphi-Quellcode:
const
  VarName: VarType = #WERT;
Gruß
Robert L.
Der folgende Satz ist richtig!
Der vorherige Satz ist falsch!

Paradox
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

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

Re: statisches Array mit Konstanten

  Alt 2. Mai 2010, 14:27
Zitat von Fussball-Robby:
..., das ist ja auch die allgemeine Form
Für typisierte Konstanten, um genau zu sein
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
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 07:51 Uhr.
Powered by vBulletin® Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2021 by Daniel R. Wolf