![]() |
Array nur bestimmte Werte..
Guten Tag liebe Delphi-Gemeinde!!
Ich denke ich gebe jetzt bald das Programmieren auf....:cry: Mir fällt nix mehr ein.. ich hoffe ihr wisst weiter... Wie deklariere ich ein Array, das nur bestimmte Werte enthält:
Delphi-Quellcode:
hier meckert der Compiler: [Fehler] xyz.pas(498): '..' erwartet, aber ',' gefunden
const Ursprung: Array[200,205,246,255] of String=('Ach','du','grosse','Jacke');
es soll also nur die Werte
Delphi-Quellcode:
geben. Ist sowas überhaupt machbar???
Ursprung[200]
Ursprung[205] Ursprung[246] Ursprung[255] Grüsse! |
AW: Array nur bestimmte Werte..
Hallo...
Arrays sind immer zusammenhängend als "Bereich". Für dein Vorhaben fallen mir spontan 2 Ideen ein. 1. - eigene Funktion schreiben, welche ein dynamisches Array auf deinen Max Wert setzt und die übergebenen Werte an die entsprechenden Indexpositionen ablegt - dann mit dem Index des Arrays arbeiten 2. - ein Array mit der Anzahl der Werte und im Array jeweils einen Record (Wert, Index) - um den Index zu finden müßtest du dann das Array durchlaufen und den Index auslesen und vergleichen :hi: |
AW: Array nur bestimmte Werte..
Oder ein Enum deklarieren und dann ein Array über das Enum aufbauen, in etwa so:
Delphi-Quellcode:
Solange das Enum nicht mehr als 255 Werte hat, wird das auch weiterhin funktionieren.
type
TMyTyp = (mt_200, mt_205, mt_245, mt_255); const myArray: array[TMyTyp] of String = ('Ach','du','grosse','Jacke'); Bernhard |
AW: Array nur bestimmte Werte..
ers ma Danke für die Antworten
werde das im Laufe des Nachmittags mal versuchen.. Die Lösung von Bernhard scheint nicht schlecht.. aber was mache ich bei Werten >255?? muss jetze leider meine IDE verwaisen lassen, da in meinem hausinternen Nachrichtensystem immer häufiger die Nachricht
Code:
WM_KOMM_JETZT_ENDLICH_ZUM_EINKAUFEN_FAHREN
mit einer Priority von 1 ausgelöst wird.. Melde mich später mit Ergebnissen wieder.. |
AW: Array nur bestimmte Werte..
Du kannst auch einfach eine TStringList nehmen, deine Integer in einen String konvertieren und als Key verwenden.
|
AW: Array nur bestimmte Werte..
Zitat:
Mehr Hinweise in der Doku: ![]() |
AW: Array nur bestimmte Werte..
Bei einem SET ist die Anzahl auf 256 beschränkt, da der genutzte Assemblerbefehl nur einen Byte-Index unterstützt.
ENUMs können locker mindestens bis 2 Milliarden gehn. |
AW: Array nur bestimmte Werte..
Zitat:
Zitat:
Bernhard |
AW: Array nur bestimmte Werte..
so... wieder da..
dachte nicht dass meine Frage solche Wellen schlägt.:) Himitsu's Lösung ist für meinen Einsatzzweck die Ideale.. Zitat:
Hintergrund ist der, dass die ersten 3 Stellen eines 15-stelligen Barcodes den Hersteller des Produkts angeben... Und die Anzahl der Hersteller kann ja dadurch 999 sein ( 2000000000 müssen's dann doch nicht sein). Barcode zB 012345678901234 001=Intel 012=Cyrix 240=AMD 573=Zilog usw.. Und die StringList kann ich auch noch supereinfach in ner Datenbank speichern.. Genial.. Manchmal sieht man wirklich den Wald vor lauter Bäumen nicht... Danke euch allen!! |
AW: Array nur bestimmte Werte..
Am besten geeignet wäre natürlich ein TDictionary<integer, string> , aber da du kein Delphi mit Generics hast, kommt das leider nicht in Frage.
Und D7 hat auch nichts entsprechendes dabei. Bernhard |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:54 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