![]() |
Eigene Flags/Typen definieren (??)
Hallo,
ich habe mal wieder ein kleines Problem: Ich habe eine Prozedur, der ich mehrere Parameter übergebe. Beispiel:
Delphi-Quellcode:
Das Problem dabei ist das "mytype". Ich möchte die Prozedur z.B. so aufrufen können:
procedure procedure1(integer1, integer2: integer; string1: string; mytype1: mytype);
Delphi-Quellcode:
Wie man sieht ist "ja" weder ein string, noch eine Zahl. Was ist das also dann?
procedure1(500,1000,'hallo',ja);
Ich möchte einen Typ definieren, der also zum Beispiel nur die Werte "ja", "nein", "beides" und "manchmal" annehmen kann. Das aber eben nicht als string (also ohne "")... Auf diese Werte wird innerhalb der Prozedur per 'case..of' zugegriffen.
Delphi-Quellcode:
Ich denke das, was ich will, ist am ehesten mit den "Flags" bei manchen Prozeduren zu vergleichen, die ja auch keine Strings darstellen.
case mytype1 of
ja: ... ; nein: ... ; usw. Wie mache ich das? Ich hoffe die Frage ist verständlich, doofere Beispiele sind mir einfach nicht eingefallen :roll: . |
Re: Eigene Flags/Typen definieren (??)
Delphi-Quellcode:
mfG
type
MyType = (ja, nein, beides, manchmal); mirage228 |
Re: Eigene Flags/Typen definieren (??)
Flags währen das:
Delphi-Quellcode:
type
TMyType = (ja, nein); TMyTypes = set of TMyType; var t : TMyTypes; t := [ja, nein]; t := [ja]; t := [nein]; t := []; |
Re: Eigene Flags/Typen definieren (??)
Ich danke euch beiden :)
|
Re: Eigene Flags/Typen definieren (??)
Hi!
Mal so als Frage zwischendurch: Ist es sinnvoll, da eigene Typen zu definieren oder würde dann nicht besser z.B. Integer übergeben und die dann mit case of "aufschlüsseln". Ciao fkerber |
Re: Eigene Flags/Typen definieren (??)
Das ist Ansichtssache!
Denn intern wird sowieso nur mit 4 Byte-Werten gearbeitet. Ich verwende lieber die Typen da dieser Code besser lesbar ist! Dafür sind die Typen manchmal kompliziert. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:59 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